Dodawanie
Ostatnio zmodyfikowano 2014-03-29 13:26
PisiekPL Temat założony przez niniejszego użytkownika |
Dodawanie » 2014-03-29 00:10:48 Witam staram się zrealizować dodawanie dowolnej liczby elementów. Jakiś pomysły na usprawnienie kodu?
#include <iostream>
using namespace std; int suma; int koniec = 1; int main() { int ile; cin >> ile;
while (koniec != ile) //warunek ile ma zostac wykonanych dodawan { int *tab; int wielkosc; cin >> wielkosc; //inicjacja dynamicznej alokacji tab = new int[wielkosc];
for (int i = 0; i < wielkosc; i++) { cin >> tab; //wczytanie danych z klawiatury }
for (int i = 0; i < wielkosc; i++)
{ suma = suma + tab; //realizacja dodawania } cout << suma << endl; //wypisanie wyniku suma = 0; // wyzerowanie wyniku przed nastepnym dodawaniem delete[] tab; //skasowanie poprzedniej tablicy }
koniec++; //inkrementacja warunku ilosci dodawania system("pause"); return 0; } |
|
OSA_PL |
» 2014-03-29 00:52:34 for( int i = 0; i < wielkosc; i++ ) { cin >> tab; }
Tutaj chyba raczej powinno być cin >> tab[ i ]; bo tak to cały czas wczytujesz dane do wskaźnika, a nie do tablicy którą utworzyłeś. To samo przy obliczaniu sumy. |
|
oputyk |
» 2014-03-29 08:49:00 Daj kod w [cpp]tutaj kod[/cpp] . |
|
PisiekPL Temat założony przez niniejszego użytkownika |
» 2014-03-29 13:16:52 #include <iostream>
using namespace std; int suma; int koniec = 1; int main() { int ile; cin >> ile; while( koniec != ile ) { int * tab; int wielkosc; cin >> wielkosc; tab = new int[ wielkosc ]; for( int i = 0; i < wielkosc; i++ ) { cin >> tab[ i ]; } for( int i = 0; i < wielkosc; i++ ) { suma = suma + tab[ i ]; } cout << suma << endl; suma = 0; delete[] tab; } koniec++; system( "pause" ); return 0; }
|
|
SeaMonster131 |
» 2014-03-29 13:26:11 Usprawnienie kodu hm.. Np. sumować elementy możesz od razu w tej samej pętli, zaraz po tym jak je wczytasz. |
|
OczkoSX |
» 2014-03-29 13:26:16 Od siebie mogę dodać że zamiast tablicy możesz wstawić tu vectora... |
|
« 1 » |