Program Najmniejsza w tablicy.
Ostatnio zmodyfikowano 2014-12-07 11:35
blejd Temat założony przez niniejszego użytkownika |
Program Najmniejsza w tablicy. » 2014-12-07 10:53:54 Witam, z racji że to mój pierwszy post chciałbym wszystkich pozdrowić. Mam Mały problem (bądź duży) otóż mam do napisania program który wpisze do tablicy kolejno 10 liczb, znajdzie najmniejszą i wypisze ile razy była ona w tablicy wpisana. ciag liczb ma byc zakonczony zerem, ale zero to nie wartosc tylko oznaka konca ciagu. #include <iostream>
using namespace std;
int main() { int min; int tablica[ 10 ]; int licznik; int i; int ile; cin >> tablica[ licznik ]; i = tablica[ licznik ]; ile++; licznik++; if( i != 0 ) { do { cin >> tablica[ licznik ]; if( tablica[ licznik ] < i ) { ile = 0; i = tablica[ licznik ]; ile++; } else if( tablica[ licznik ] = i ) { ile++; } licznik++; } while( licznik < 9 ); } else { cout << "Pierwsza liczba byla zerem, koniec." << endl; } cout << "Najmniejsza sposrod wymienionych to: " << i << " I wystapila " << ile << " razy" << endl; }
Troszeczke zedytowalem program, teraz dziala prawie dobrze. Sytuacja w ktorej podajemy ciag dziewieciu 2 i jedna edynke na koncu dziala. Ale np. wpisanie ciagu od 1 do 9 konczy sie tak ze program wpisuje ze najmniejsza to "1" i wystapila 9 razy. |
|
pekfos |
» 2014-12-07 11:16:46 if( tablica[ licznik ] = i )
|
Przypisanie..? |
|
blejd Temat założony przez niniejszego użytkownika |
» 2014-12-07 11:19:16 Racja, tam był błąd, jednak program nadal nie zachowuje się tak jak powinien.
Po wpisaniu ciagu : 2,3,4,5,6,7,8,9,10,1
Otrzymuje informacje ze 1 byla najmniejsza, ale wystapila 2 razy. |
|
pekfos |
» 2014-12-07 11:24:47 Wszystkie zmienne masz niezainicjalizowane. |
|
blejd Temat założony przez niniejszego użytkownika |
» 2014-12-07 11:25:43 #include <iostream>
using namespace std;
int main() { int tablica[ 10 ]; int licznik = 0; int i =- 1; int ile = 0; cin >> tablica[ licznik ]; i = tablica[ licznik ]; ile++; licznik++; if( i != 0 ) { do { cin >> tablica[ licznik ]; if( tablica[ licznik ] < i ) { ile = 0; i = tablica[ licznik ]; ile++; } if( tablica[ licznik ] == i ) { ile++; } licznik++; } while( licznik < 10 ); } else { cout << "Pierwsza liczba byla zerem, koniec." << endl; } cout << "Najmniejsza sposrod wymienionych to: " << i << " I wystapila " << ile << " razy" << endl; }
Po takich edycjach ten blad nadal wystepuje. |
|
pekfos |
» 2014-12-07 11:29:38 Usuń ile++ z pierwszego if w pętli. |
|
blejd Temat założony przez niniejszego użytkownika |
» 2014-12-07 11:35:07 Ho! Dzięki, coz za trywialne bledy a tyle problemow! |
|
« 1 » |