witam,
mam problem z napisaniem programu który powinien wczytać z pliku .txt liczby a nastepnie obliczyć średnią z kazdej kolumny i kazdego wiersza
w pliku txt liczby zapisane sa w nast sposób:
liczba11 liczba12 liczba13
liczba21 liczba22 liczba23
:
liczbaN1 liczbaN2 liczbaN3
problem polega na tym ze nie wiadomo ile jest wierszy, kolumny sa tylko 3
bardzo prosze o pomoc poniewaz nie wiem jak uryzć ten problem
Jeżeli nie wiadomo ile jest wierszy, to nie używaj tablic dynamicznych tylko wektora.
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
int main()
{
ifstream plik("help.h");
vector<int> liczby;
int liczba;
char end;
while(plik >> liczba)
liczby.push_back(liczba);
for(int i = 0; i < liczby.size(); i++)
{
if(!(i % 3))
cout << "\n";
cout << liczby[i] << "\t";
}
cout << endl;
system("pause");
return 0;
}
Masz je w postaci int i możesz dokonywać na nich działań itp.
Pobierz liczbę wierszy z pliku, ew skorzystaj z wektorów :)
dzieki MJay strasznie mi pomogłeś, ale nie umiem obsługiwać wektorów, mogłbyś mi pomóc jak policzyć te średnie, w jaki sposób to zrobić?
Tak jakbyś obsługiwał tablicę.
liczby[0] - pierwszy element
liczby[1] - drugi element
liczby[2] - trzeci
...
liczby[n - 1] - ostatni element
Więc jeżeli chcesz zsumować wszystkie z pierwszej kolumny to liczby[0] + liczby[3] + liczby[6] + ... , analogicznie do drugiej i trzeciej. Jeżeli wierszami to liczby[0] + liczby[1] + liczby[2] - pierwszy wiersz.
Nie wiem, czy poprzez wklejanie kodów za dużo nie pomagam, bo przez to przestają się autorzy zastanawiać nad zadaniem, bo mają gotowca..
bardzo mi pomagasz, poniewaz moja przygoda z c++ dopiero sie zaczyna a problem który musze rozwiazać przerosł moje mozliwości:(
To czemu taki trudny problem sobie wymyśliłeś?
dostałem na zadanie na laborki z podstaw programowania tego typu programy do napisania:-) nie jestem informatykiem studiuje coś innego ale to co robimy na zajeciach nie mozna nazwać w zaden sposób podstawami