Aiuto programmino in c

ing.mecc1
salve ragazzi, io ho un problemino,è un po' lunghetto ma userò un programmino semplice come esempio per capirci meglio.
ecco il programma:

#include
#include

int main()
{ int a,b,c;
a=15*15*15;
for(b=1;b<500;b++){
for(c=0;c<500;c++)

if(a==b*b-c*c)
printf(" %d %d \n " ,b,c);}

system("PAUSE");
return 0;
}

in questo programma prendo il numero 15^3 e trovo delle coppie di numeri per cui la differenza dei loro quadrati è proprio 15^3.
il mio problema è che quando compilo mi da' più di una coppia di numeri,
infatti mia dà:

60 15
76 49
80 55
120 105
192 183
340 335
Premere un tasto per continuare . . .

a me servirebbe che si fermasse alla prima coppia di numeri...
che correzione devo apportare???
un grazie anticipato a chi mi darà una mano
ciao

Risposte
Cheguevilla
Devi aggiungere un'istruzione di fine nel blocco "IF" nel caso in cui la condizione è validata.
Cioè:
#include <stdio.h>
#include <stdlib.h>

int main()
{
int a,b,c;
a=15*15*15;
for(b=1;b<500;b++)
   {
   for(c=0;c<500;c++)
      if(a==b*b-c*c)
      {
      printf(" %d %d \n " ,b,c);
      system("PAUSE");
      return 0;
      }
   }
printf("No valid results found.");
system("PAUSE");
return 0;
} 

luciano791
"cheguevilla":
Devi aggiungere un'istruzione di fine nel blocco "IF" nel caso in cui la condizione è validata.
Cioè:
#include <stdio.h>
#include <stdlib.h>

int main()
{
int a,b,c;
a=15*15*15;
for(b=1;b<500;b++)
   {
   for(c=0;c<500;c++)
      if(a==b*b-c*c)
      {
      printf(" %d %d \n " ,b,c);
      system("PAUSE");
      return 0;
      }
   }
printf("No valid results found.");
system("PAUSE");
return 0;
} 

Aggiungo inoltre che se scrivi il programma come ha fatto cheguevilla (ovvero tabulazioni fatte bene e una riga=un'istruzione, anche per le parentesi) trovi subito questo genere di errori

Cheguevilla
Eheheh, grazie luciano79.
Si, comunque è vero, scrivendo con le indentazioni corrette, tutto è molto più semplice.
Per curiosità, in windows, cosa usate come text editor?
Io con SciTE mi trovo benissimo.
Non richiede installazione ed è davvero versatile.

luciano791
"cheguevilla":
Per curiosità, in windows, cosa usate come text editor?

Io uso "Dev c++" e rimpiango la ditta precedente che aveva una licenza della Borland :(

Diravan
io uso borlan

gigilatrottola2
io uso vs 2005... molte università sono legate alla ms accademy alliance ed in quanto studente posso usare i prodotti ms con licenza :D

luciano791
"gigilatrottola":
io uso vs 2005... molte università sono legate alla ms accademy alliance ed in quanto studente posso usare i prodotti ms con licenza :D

Intendi C#?
Se si chiunque può scaricarlo gratis fino a novembre, basta non usarlo per lavoro.

TomSawyer1
Io visual c++. Non ho mai usato altri compilatori. Dovrei cambiare?

auridevil
Codeblocks!

ma borland com'è? è buono?

gigilatrottola2
"luciano79":
[quote="gigilatrottola"]io uso vs 2005... molte università sono legate alla ms accademy alliance ed in quanto studente posso usare i prodotti ms con licenza :D

Intendi C#?
Se si chiunque può scaricarlo gratis fino a novembre, basta non usarlo per lavoro.[/quote]

no intendo tutto Visual Studio NET Team Edition for SW Developers (2002, 2003 o 2005 a scelta) :wink:
piu tutti gli altri prodotti (inclusi i sistemi operativi, anche i server) microsoft ad esclusione di office

provate a chiedere in uni se è parte dell'alliance

gigilatrottola2
"auridevil":
Codeblocks!
ma borland com'è? è buono?


A me il compilatore C++ della Borland nn piace per niente.
Per il C usavo inizialmente LCC (interfaccia molto spartana, semplice, ma molto pulita)
Poi quando ho iniziato a lavorare sul sistema con molti file nello stesso progetto ed in C++, Visual C++

Della Borland mi piace molto il JBuilder :)

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.