Multidesk.be » Forums » C en C++ » Hulp met programma gevraagd (gesloten)

Helpinformatie
Dit onderwerp bevindt zich in het archief.
Het is bijgevolg niet mogelijk er nog op te reageren.
  • Pagina
  • 1 van 1
  • RSS
  • Eerste ongelezen reactie
  • Plaats een reactie
  • Abonneer mij
  • Onderwerp sluiten
0 gasten lezen dit onderwerp.
^ Onderwerp geschreven door JoBe op donderdag 6 januari 2005 om 19:24:02.
JoBe heeft nog geen avatar toegevoegd
Multiviteit: 5
  • Bewerken
  • Citeren
  • Reageren
  • Verwijderen
  • Waarschuw een crewlid
Hallo dames en heren,

Graag had ik jullie hulp willen inroepen om mij een handje te helpen bij volgend programmatje!


De opdracht is de volgende: Schrijf een programma dat een rij gehele getallen leest, afgesloten door een willekeurige niet-numerieke code, bijvoorbeeld het woord STOP. Bepaal hoeveel verschillende getallen ingelezen worden. Het aantal gelezen getallen is onbeperkt, maar er zullen MAXIMAAL 10 verschillende getallen worden aangeboden. ( Worden meer dan 10 verschillende getallen aangeboden, dan moet een foutmelding gegeven worden en mag het programma direct stoppen).



De code die ik tot nu toe heb is de volgende:

CODE
  1.  
  2. int main()
  3. {
  4.         const int amount=10;
  5.         int s[amount],n=0, x=0,y=0;
  6.         char ch=\'s\';
  7.  
  8.                 for (;;)
  9.                 {
  10.                         cin>>n;
  11.                                 if (n==\'ch\')break;
  12.                                 else
  13.                                 ++y;
  14.                                         for (int i=0;i<y;i++)
  15.                                         {
  16.                                                 if (n==s[i])break;
  17.                                                         if(s[i]>0 && n!=s[i])x++;
  18.                                         }
  19.                                         s[i]=n;
  20.                                                 if (x==10)
  21.                                                 {
  22.                                                 cout<< \"The amount of different numbers has reached it\'s limit!\"<<endl;
  23.                                                 break;
  24.                                                 }
  25.                 }
  26.                 cout<<\"The amount of different numbers is: \"<< x <<endl;
  27.  
  28.         return 0;
  29. }
  30.  


Het probleem zit hem in het feit dat in mijn code \'x\' de teller is die aan moet geven hoeveel verschillende getallen er voorkomen in de ingegeven lijst, maar x wordt telkens verhoogd iedere keer ik de lijst doorloop als er een nieuw getal in wordt gebracht en dat is niet de bedoeling.

Deze oefening is afkomstig uit het boek C++ door Leen Ammeraal en de uitgever is Academic Service.

Deze oefening wordt gegeven nadat de stof voor iteraties, selecties, en array\'s (enkel voor integers op eenvoudige wijze) getoond is en moet dus ook met die stof die tot dan gezien is opgelost worden, geen pointers, geen structures, geen OO programmeren.

Hoop dat jullie mij hiermee kunnen voort helpen.
  • Pagina
  • 1 van 1
  • RSS
  • Eerste ongelezen reactie
  • Plaats een reactie
  • Abonneer mij
  • Onderwerp sluiten