RISOLTO [C++] Dati tre numeri, determinare il maggiore

Stato
Discussione chiusa ad ulteriori risposte.

Skills07

Moderatore
Staff Forum
10,972
3,040
Hardware Utente
CPU
Ryzen 7 2700x
Dissipatore
Stock
Scheda Madre
Aourus Gigabyte X-470
Hard Disk
Samsung Evo 850 250gb,2tb toshiba, 500gb western digital, 160gb segate
RAM
16 gb G.Skill Tridentz 3200 mhz RGB
Scheda Video
Sapphire RX 580 8gb ddr5
Monitor
Samsung Smart TV Full HD 50 Pollici/ Hp ES 24 IPS
Alimentatore
XFX 80 plus 750 watt
Case
Aerecool xpredator x3
Sistema Operativo
Windows 10 Pro 64
inizia a controllarlo tu con quello che ti ho indicato
 
  • Mi piace
Reactions: Ancora79

Squalo03

Bannato a Vita
443
92
Hardware Utente
CPU
amd fx tm 6300 six core processor
Scheda Video
nvidia geforce gtx 650
Monitor
Samsung
Periferiche
mouse
Sistema Operativo
Windows 10 pro
Codice:
//librerie
#include <iostream>
using namespace std;

//3 numeri
int main(){
    float a,b,c,max;
    cout<<"inserire il valore di a"<<endl;
    cin>>a;
    cout<<"inserire il valore di b"<<endl;
    cin>>b;
    cout<<"inserire il valore di c"<<endl;
    cin>>c;
    if(A>B)
    {
    if(a>c)
    {
    max=a;
    }
    }
    else
    {
    max=c;
    }
    if(b>c)
    {
    max=b;
    }
    else
    {
    max=c;
    }
    max=b;
    }
    else
   {
    max=c;
   }
   cout << "Il numero piu' grande tra quelli inseriti e': " <<max<< endl;
   getchar();




cosa sbaglio ho provato come hai detto tu
Post automaticamente unito:

Codice:
//librerie
#include <iostream>
using namespace std;

//3 numeri
int main(){
    float a,b,c,max;
    cout<<"inserire il valore di a"<<endl;
    cin>>a;
    cout<<"inserire il valore di b"<<endl;
    cin>>b;
    cout<<"inserire il valore di c"<<endl;
    cin>>c;
    if(a>b)
    {
    if(a>c)
    {
    max=a;
    }
    else
    {
    max=c;
    }
    if(b>c)
    {
    max=b;
    }
    else
    {
    max=c;
    }
    max=b;
    }
    else
    {
    max=c;
    }
   cout << "Il numero piu' grande tra quelli inseriti e': " <<max<< endl;
   getchar();}

vedi questo
 

Skills07

Moderatore
Staff Forum
10,972
3,040
Hardware Utente
CPU
Ryzen 7 2700x
Dissipatore
Stock
Scheda Madre
Aourus Gigabyte X-470
Hard Disk
Samsung Evo 850 250gb,2tb toshiba, 500gb western digital, 160gb segate
RAM
16 gb G.Skill Tridentz 3200 mhz RGB
Scheda Video
Sapphire RX 580 8gb ddr5
Monitor
Samsung Smart TV Full HD 50 Pollici/ Hp ES 24 IPS
Alimentatore
XFX 80 plus 750 watt
Case
Aerecool xpredator x3
Sistema Operativo
Windows 10 Pro 64
ma puoi dire l'errore che ti da?
 

Skills07

Moderatore
Staff Forum
10,972
3,040
Hardware Utente
CPU
Ryzen 7 2700x
Dissipatore
Stock
Scheda Madre
Aourus Gigabyte X-470
Hard Disk
Samsung Evo 850 250gb,2tb toshiba, 500gb western digital, 160gb segate
RAM
16 gb G.Skill Tridentz 3200 mhz RGB
Scheda Video
Sapphire RX 580 8gb ddr5
Monitor
Samsung Smart TV Full HD 50 Pollici/ Hp ES 24 IPS
Alimentatore
XFX 80 plus 750 watt
Case
Aerecool xpredator x3
Sistema Operativo
Windows 10 Pro 64
il perchè lo devi sapere tu.... un conto è se ti da errore di compilazione un conto è la logica dell'esercizio...
che non è difficile... prendi in inserimento 3 numeri...
confronti il primo con il secondo... se A è > B ti salvi A...
poi verifichi che B è > C se A è > B e B è > C allora stampi A.
e cosi via per i vari casi... sono 3 numeri e non puoi avere una sola combinazione puoi avere che C è > A e < B
 

Squalo03

Bannato a Vita
443
92
Hardware Utente
CPU
amd fx tm 6300 six core processor
Scheda Video
nvidia geforce gtx 650
Monitor
Samsung
Periferiche
mouse
Sistema Operativo
Windows 10 pro
il perchè lo devi sapere tu.... un conto è se ti da errore di compilazione un conto è la logica dell'esercizio...
che non è difficile... prendi in inserimento 3 numeri...
confronti il primo con il secondo... se A è > B ti salvi A...
poi verifichi che B è > C se A è > B e B è > C allora stampi A.
e cosi via per i vari casi... sono 3 numeri e non puoi avere una sola combinazione puoi avere che C è > A e < B
Ma é giusto il codice?

Inviato da SM-J530F tramite App ufficiale di Tom\'s Hardware Italia Forum
 

Skills07

Moderatore
Staff Forum
10,972
3,040
Hardware Utente
CPU
Ryzen 7 2700x
Dissipatore
Stock
Scheda Madre
Aourus Gigabyte X-470
Hard Disk
Samsung Evo 850 250gb,2tb toshiba, 500gb western digital, 160gb segate
RAM
16 gb G.Skill Tridentz 3200 mhz RGB
Scheda Video
Sapphire RX 580 8gb ddr5
Monitor
Samsung Smart TV Full HD 50 Pollici/ Hp ES 24 IPS
Alimentatore
XFX 80 plus 750 watt
Case
Aerecool xpredator x3
Sistema Operativo
Windows 10 Pro 64
io non ho modo di testare il tuo codice... ti ho solo dato la logica e il codice lo devi scrivere tu...
io posso dirti se ci sono errori di sintassi...
se ti faccio io l'esercizio tu non capirai mai perchè a te non funziona
 

Andretti60

Utente Èlite
3,470
2,332
Hardware Utente
Ovvio che e' un errore di logica, che vedresti subito se avessi indentato il tuo codice in maniera decente.
Te lo indento io. dovresti vedere subito gli sbagli che stai facendo:
C:
    if(a>b)
    {
        if(a>c)
        {
            max=a;
        }
        else
        {
            max=c;
        }
        if(b>c)
        {
            max=b;
        }
        else
        {
            max=c;
        }
        max=b;
    }
    else
    {
        max=c;
    }
L'indentazione non e' solo questione di estetica.
Post automaticamente unito:

PS la prossima volta dai alla discussione un titolo piu' appropriato. "Linguaggio C++" non vuole dire nulla :)
Post automaticamente unito:

Se la guida di sezione non è chiara la aggiornerò con immagini esplicative.
E' chiarissima. Se poi gli utenti non la capiscono, non mi stupisce se poi non sanno mettere insieme due righr di codice ANCHE con tutti i suggerimenti che diamo.
 
  • Mi piace
Reactions: Mursey

Andretti60

Utente Èlite
3,470
2,332
Hardware Utente
Ho comunque provato a renderla ancora più chiara per evitare qualsiasi malinteso o spiacevole situazione.
:ok:
Se posso dare un suggerimento, potresti aggiungere di dare un titolo sensato alle conversazioni. "Problema linguaggio Alpha" per esempio non dice nulla.

EDIT: i nostri messaggi si sono incrociati. Grazie per avere cambiato il titolo.
 

rctimelines

Utente Èlite
4,042
1,318
Hardware Utente
CPU
AMD Ryzen 7 2700X | INTEL i5-6600k | INTEL i5-4460... altri
Dissipatore
wraith MAX | Arctic Freezer 11LP | stock
Scheda Madre
Asrock Fatal1ty 4K | Asus Prime Z270P | Acer Veriton
Hard Disk
Samsung 970evo m.2 | vari | Samsung 860 evo
RAM
16GB G.Skill TridentZ 3000 | 16GB CORSAIR 2133 | 8GB DDR3 1600
Scheda Video
RadeonPro WX3100 4G | Asus R9 280x 3G | Quadro k620 2G
Monitor
DELL 2419P 2K + Benq 17" | Acer 24" FHD | Benq 19" FHD
Sistema Operativo
Windows10-pro64/OpenSUSE-QL42.3/Manjaro-17.0.2-KDE
Questo thread è assurdo!

max = A
se max minore di B allora max=B
se max minore di C allora max=C
... e così via per tutti i valori che vuoi.. trovi il valore più alto in max

Puoi togliere tutte quelle parentesi e gli else.

Inviato dal mio Nexus 5 utilizzando Tapatalk
 
  • Mi piace
Reactions: Andretti60
Stato
Discussione chiusa ad ulteriori risposte.

Entra

oppure Accedi utilizzando