dzien dobry czy mogłbym mi ktoś pomoć mianowaicie mam takie zadanie:
napisz program w c++ ktory pobiera liczby z pliku sortuje je i przenosi do drugiego
bylbym bardzo wdzieczny
dzien dobry czy mogłbym mi ktoś pomoć mianowaicie mam takie zadanie:
napisz program w c++ ktory pobiera liczby z pliku sortuje je i przenosi do drugiego
bylbym bardzo wdzieczny
Chętnie pomożemy. Z czym masz problem? Pokaż co już masz
kq napisał(a):
Chętnie pomożemy. Z czym masz problem? Pokaż co już masz
#include <iostream>
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
int main()
{
// Otwórz plik wejściowy
ifstream wejscie("wejscie.txt");
if (!wejscie.is_open())
{
cout << "Nie udało się otworzyć pliku wejściowego." << endl;
return 1;
}
// Wczytaj liczby z pliku wejściowego i zapisz do wektora
vector<int> liczby;
int liczba;
while (wejscie >> liczba)
{
liczby.push_back(liczba);
}
// Posortuj liczby w wektorze
sort(liczby.begin(), liczby.end());
// Otwórz plik wyjściowy
ofstream wyjscie("wyjscie.txt");
if (!wyjscie.is_open())
{
cout << "Nie udało się otworzyć pliku wyjściowego." << endl;
return 1;
}
// Zapisz posortowane liczby do pliku wyjściowego
for (int liczba : liczby)
{
wyjscie << liczba << endl;
}
// Zakończ program
cout << "Posortowane liczby zostały zapisane do pliku wyjscie.txt." << endl;
return 0;
}
mam coś takiego ale srednio działa bo wyskakuje mi ciągle Nie udało się otworzyć pliku wyjściowego.
Pewnie musisz te pliki pootwierać zanim sprawdzasz czy są otwarte.
opiszon napisał(a):
Pewnie musisz te pliki pootwierać zanim sprawdzasz czy są otwarte.
nic to nie dało
Pytanie: jak uruchamiasz ten program? Jak w IDE to bieżący katalog może być inny niż ten zawierający plik wejscie.txt
. Poza tym sprawdziłem u mnie i Twój program działa, odczytuje i zapisuje posortowane wartości.
Popraw tak:
#include <iostream>
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
int main()
{
// Otwórz plik wejściowy
ifstream wejscie("wejscie.txt");
if (!wejscie.is_open())
{
perror("Nie udało się otworzyć pliku wejściowego.");
return 1;
}
// Wczytaj liczby z pliku wejściowego i zapisz do wektora
vector<int> liczby;
int liczba;
while (wejscie >> liczba)
{
liczby.push_back(liczba);
}
// Posortuj liczby w wektorze
sort(liczby.begin(), liczby.end());
// Otwórz plik wyjściowy
ofstream wyjscie("wyjscie.txt");
if (!wyjscie.is_open())
{
perror("Nie udało się otworzyć pliku wyjściowego.");
return 1;
}
// Zapisz posortowane liczby do pliku wyjściowego
for (int liczba : liczby)
{
wyjscie << liczba << endl;
}
// Zakończ program
cout << "Posortowane liczby zostały zapisane do pliku wyjscie.txt." << endl;
return 0;
}
Będzie przynajmniej wiadomo jaki jest problem z otwarciem pliku:
Napiszcie w ChatGPT Napisz program w c++ ktory pobiera liczby z pliku sortuje je i przenosi do drugiego i porównajcie wynik z tym programem, który był nam podany na początku :)