RISOLTO Esercizio Java

Stato
Discussione chiusa ad ulteriori risposte.

insidethelollo98

Nuovo Utente
7
0

Ragazzi sono alle prime armi con java e mi servirebbe una mano con il seguente esercizio:

Scrivere un programma java che somma tutti i voti dati dall'utente e ne trova il massimo e il minimo. Termina quando il voto dato è zero

Questo è quello che ho fatto fino adesso:
Java:
package esercizio2;
import java.util.Scanner;

public class esercizio3 {

    public static void main(String[] args) {
        Scanner leggi=new Scanner (System.in);
    int voti;
    voti=new int;
    int i;
    float somma;
    int minimo;
    int massimo;
   
    for(i=0;i!=0;i++)
    {
        do
        {
        System.out.print("Inserisci il"+(i+1)+"voto");
        voti=leggi.nextInt();
    }while (voti<0);
}
    somma=0;
    for(i=0;i!=0;i++) {
        somma=somma+voti;
    }
    System.out.println("La somma è; "+ somma);
    minimo=voti;
    massimo=voti;
    for(i=1;i!=0;i++)
    {
        if(minimo>voti)
        {
            minimo=voti;
        }
        if(massimo<voti)
        {
            massimo=voti;
        }
    }
    System.out.println("IL numero minore" + minimo);
    System.out.println("Il numero maggiore" + massimo);

}
}
 
Ultima modifica da un moderatore:

Skills07

Head of Development
Staff Forum
Utente Èlite
35,443
11,502
CPU
Ryzen 7 5800x
Dissipatore
Deepcool gammax l240 v2
Scheda Madre
Aourus Gigabyte X-470 ultra gaming
HDD
Samsung Evo 850 250gb ,2tb x 2 toshiba P300, 256 Ssd silicon power, Samsung evo plus 1tb nvme
RAM
32 gb G.Skill Tridentz 3200 mhz RGB
GPU
Zotac - RTX 3070 Ti Trinity OC
Monitor
ASUS TUF QHD 165hz IPS, ITEK GCF 165hz IPS QHD, Samsung Curvo 144hz QHD
PSU
Seasonic Focus 650w 80 platinum
Case
Coolermaster h500p
Periferiche
Asus Tuf Wireless
Net
Fibra Tim 100mb
OS
Windows 10 Pro 64 bit
il problema quale sarebbe? cosa non ti riesce?
 

DispatchCode

Moderatore
Staff Forum
Utente Èlite
2,223
1,854
CPU
Intel I9-10900KF 3.75GHz 10x 125W
Dissipatore
Gigabyte Aorus Waterforce X360 ARGB
Scheda Madre
Asus 1200 TUF Z590-Plus Gaming ATX DDR4
HDD
1TB NVMe PCI 3.0 x4, 1TB 7200rpm 64MB SATA3
RAM
DDR4 32GB 3600MHz CL18 ARGB
GPU
Nvidia RTX 3080 10GB DDR6
Audio
Integrata 7.1 HD audio
Monitor
LG 34GN850
PSU
Gigabyte P850PM
Case
Phanteks Enthoo Evolv X ARGB
Periferiche
MSI Vigor GK30, mouse Logitech
Net
FTTH Aruba, 1Gb (effettivi: ~950Mb / ~480Mb)
OS
Windows 10 64bit / OpenSUSE Tumbleweed
il problema quale sarebbe? cosa non ti riesce?
Il problema è che è tutto sbagliato...

Riporto tutti gli errori che vedo @insidethelollo98

Codice:
    int voti;
    voti=new int;

Non è un array questo.

Codice:
for(i=0;i!=0;i++)

La condizione del ciclo è errata.

Codice:
voti=leggi.nextInt();

questo è a sua volta errato, in quanto "voti" non è un array (e se lo fosse devi specificare l'indice).

Codice:
somma=somma+voti;

idem, non è un array, e se lo fosse dovresti specificare l'indice.

Codice:
    minimo=voti;
    massimo=voti;
    for(i=1;i!=0;i++)
    {

anche qui, dovresti accedere all'indice di voti (se fosse un array).
Inoltre la condizione è errata, i non sarà mai 0.
 
  • Mi piace
Reazioni: BAT e Tidus88

pabloski

Utente Èlite
2,868
916
beh, in effetti, quel listato mostra una certa meccanicità nella logica ( il for è decisamente fuori posto visto quello che chiede la traccia, mischiato poi col while, viene da chiedersi cosa volesse fare! ) e una totale non conoscenza della sintassi del Java
 

BAT

Moderatore
Staff Forum
Utente Èlite
22,948
11,581
CPU
1-Neurone
Dissipatore
Ventaglio
RAM
Scarsa
Net
Segnali di fumo
OS
Windows 10000 BUG
se leggi i voti uno per uno il ciclo for è concettualmente sbagliato (anche se utilizzabile facendo qualche acrobazia programmatoria...), dovresti usare un ciclo while oppure un do che termina non appena leggi lo zero.
 

giangiks

Utente Attivo
256
18
ma scusa, puoi fare tutto in un solo ciclo, inoltre molte cose che hai scritto non hanno senso, ti consiglio di studiare gli errori che commetti.

https://pastebin.com/5WaUtsd0 ---> così funziona ed ha bisogno solo di un ciclo
Post unito automaticamente:

ma scusa, puoi fare tutto in un solo ciclo, inoltre molte cose che hai scritto non hanno senso, ti consiglio di studiare gli errori che commetti.

https://pastebin.com/5WaUtsd0 ---> così funziona ed ha bisogno solo di un ciclo.

specifico che si potrebbe fare molto meglio ma ho provato ad adattare il tuo
 
Stato
Discussione chiusa ad ulteriori risposte.

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!

Discussioni Simili