View Full Version : [JAVA] un aiutino per questo (semplice) esercizio...
ciao a tutti chi mi potrebbe dare una mano per questo piccolo esercizio:
"devo prendere 2 numeri interi in input,stampare a video somma,prodotto,divisione,sottrazione e modulo% e strutturare il codice in modo che ci sia ogni metodo per ogni operazione nel main..."
grazie a chiunque mi risponda e spero nel piu' breve tempo possibile perche' domani verro' sicuramente chiamato a dimostrarlo :rolleyes:
tu fino ad ora cosa hai fatto?
posta il codice e ciò che non hai capito
e' sicuramente un esercizio facile facile pero' il mio problema e' strutturarlo bene...
1 importo librerie java.text e java.io
2 inizio public class Numeri //cosi' la chiamero'
3 metodo main public static void main(String[] argv)
4 stampa a video "inserisci due numeri"
5 stringhe per l'input da tastiera
6 public static int somma(num1,num2)
7 return num1+num2
8 stampo a video la somma di num1 e num2....
e cosi' via per tutte le altre operazioni...
va bene cosi' o sbaglio?
Ormai arrivo tardi, ma sei sicuro che non vogliano tutto il programma all'interno del metodo main, cioè senza altri metodi di classe (peraltro un modo orrendo di usare java)?
Originally posted by "PGI"
Ormai arrivo tardi, ma sei sicuro che non vogliano tutto il programma all'interno del metodo main, cioè senza altri metodi di classe (peraltro un modo orrendo di usare java)?
In effetti anche il professore ci ha avvisato che non e' sicuramente questo il modo di usare java pero' per il corso che facciamo e soprattutto per usare dei piccolissimi programmi dimostrativi ci tocca fare questi piccoli esercizi computazionali...
Cmq come potrei fare:
tutto all'interno del metodo main oppure usare altri metodi di classe?
dino_sauro00
25-06-2003, 05:59
6 sicuro che vi ha ciesto di farlo cosi? Non e' che ha chiesto una classe Numeri dove c'e' il main e un'altra con tutti i metodi dentro? Mi sembrerebbe molto piu' sensato anche perche' come giustamente ha detto PGI questo e' un modo orrendo di programmare. Nel caso comunque sia cosi' ti do un pezzettino di codice e tutto il resto del programma va fatto cosi':
public class Numeri
{
public static void main (String [] args)
{
System.out.println ("Inserisci 2 numeri");
int num1 = 6; //qui ovviamente li inserisco io mentre tu devi
int num2 = 3; //usare ConsoleReader o altro per l'input
System.out.println (somma(num1,num2));
}
public static int somma(int num1, int num2)
{
return(num1+num2);
}
}
Originally posted by "darton"
In effetti anche il professore ci ha avvisato che non e' sicuramente questo il modo di usare java pero' per il corso che facciamo e soprattutto per usare dei piccolissimi programmi dimostrativi ci tocca fare questi piccoli esercizi computazionali...
Cmq come potrei fare:
tutto all'interno del metodo main oppure usare altri metodi di classe?
Io credo che voglia tutto nel main, altrimenti l'esercizio non ha senso (che è, il grande gioco dei metodi static? :D )
In pratica nel main inizi con un boolean che controlla un ciclo (while) all'interno del quale fai girare il programma.
Alla fine della routine chiedi se si vuole ricominciare e imposti a seconda della scelta dell'utente il booleano del ciclo principale a false o true, così tutto riparte oppure finisce.
Nel mezzo fai più o meno lo stesso per gestire l'input utente.
Non è così "banale" come può sembrare, perchè devi decide se e come gestire, ad esempio, l'input utente errato (che succede se chiedi un numero e lo stordito di turno scrive "ciao"? :D ).
Se vuoi un esempio del codice, basta chiedere. ;)
Ciao.
dino_sauro00
25-06-2003, 10:48
Secondo me non deve essere fatto in maniera cosi' "complicata". Infatti il programma chiede semplicemente l'uso di 2 numeri che l'utente immette una sola volta e poi gira sempre con questi. Visto poi che l'esercizio e' semplice non credo ci sia bisogno di mettere exceptions o gestire l'input errato. Infatti sapendo gestire queste cose non il professore gli avrebbe chiesto di adoperarli in questo programma.
Comunque PGI non sto dicendo tutto questo per polemica e spero non ti offendi. :)
Anzi mi sa che avro' bisogno del tuo aiuto adesso per un problema di array sempre in Java. Posto il quesito e il codice in questo post o dici che e' meglio aprirne un' altro?
Originally posted by "dino_sauro00"
Secondo me non deve essere fatto in maniera cosi' "complicata". Infatti il programma chiede semplicemente l'uso di 2 numeri che l'utente immette una sola volta e poi gira sempre con questi. Visto poi che l'esercizio e' semplice non credo ci sia bisogno di mettere exceptions o gestire l'input errato. Infatti sapendo gestire queste cose non il professore gli avrebbe chiesto di adoperarli in questo programma.
Comunque PGI non sto dicendo tutto questo per polemica e spero non ti offendi. :)
Anzi mi sa che avro' bisogno del tuo aiuto adesso per un problema di array sempre in Java. Posto il quesito e il codice in questo post o dici che e' meglio aprirne un' altro?
Io non mi offendo mai (credo mi manchi l'apposito cromosoma o una cosa del genere :D ).
Può essere benissimo come dici, forse è un esercizio su un solo ciclo, tutto dipende in realtà da quello che vuole chi chiede che quell'esercizio sia fatto.
Per l'aiuto, se so rispondo volentieri. Forse è meglio un altro post , così hai anche modo di avere più risposte.
Ciao.
dino_sauro00
25-06-2003, 11:07
OK! Ti ringrazio della disponibilita' e comincio a scrivere!
Ciao
Originally posted by "PGI"
Io credo che voglia tutto nel main, altrimenti l'esercizio non ha senso (che è, il grande gioco dei metodi static? :D )
In pratica nel main inizi con un boolean che controlla un ciclo (while) all'interno del quale fai girare il programma.
Alla fine della routine chiedi se si vuole ricominciare e imposti a seconda della scelta dell'utente il booleano del ciclo principale a false o true, così tutto riparte oppure finisce.
Nel mezzo fai più o meno lo stesso per gestire l'input utente.
Non è così "banale" come può sembrare, perchè devi decide se e come gestire, ad esempio, l'input utente errato (che succede se chiedi un numero e lo stordito di turno scrive "ciao"? :D ).
Se vuoi un esempio del codice, basta chiedere. ;)
Ciao.
Ciao ti ringrazio per la disponibilita' come avrai capito sono proprio all'inizi pero' mi farebbe molto piacere se potessi farmi avere un esempio del codice...
A dirla tutta è la prima volta che faccio un programma interamente a linea di comando, non so se sia un buon esempio di programmazione...però funziona! :D
//**************************************
//*che razza di maniera per usare Java!*
//**************************************
import java.io.*;
import java.awt.*;
import java.util.*;
class Test {
public static void main(String[] a) {
Date d=new Date();
System.out.println("Oggi: "+d);
BufferedReader reader=new BufferedReader(new InputStreamReader(System.in));
int ch=0;
int numero1=0;
int numero2=0;
boolean execute=true;
boolean nextStep=true;
String inString=null;
while(execute) {
nextStep=true;
inString="";
System.out.print("Inserire il primo numero: ");
try {
inString=reader.readLine();
numero1=Integer.parseInt(inString);
} catch(IOException e) {
System.out.println(e);
nextStep=false;
} catch(NumberFormatException e) {
System.out.print(inString+" non e' un numero\n");
nextStep=false;
}
if(nextStep) {
System.out.print("Inserire il secondo numero: ");
try {
inString=reader.readLine();
numero2=Integer.parseInt(inString);
} catch(IOException e) {
System.out.println(e);
nextStep=false;
} catch(NumberFormatException e) {
System.out.print(inString+" non e' un numero\n");
nextStep=false;
}
}
if(nextStep) {
boolean ok=false;
while(!ok) {
System.out.println("1: "+numero1+" 2: "+numero2);
System.out.println("Selezionare la funzione");
System.out.println("Somma [+]");
System.out.println("Sottrazione [-]");
System.out.println("Divisione [/]");
System.out.println("Moltiplicazione [*]");
System.out.println("Modulo [%]");
System.out.println();
System.out.println("Uscire [x]");
try {
inString=reader.readLine();
} catch(IOException e) {
System.out.println(e);
ok=false;
nextStep=false;
}
if(inString.length()==1) {
ok=true;
}
}
}
char c=inString.charAt(0);
if(nextStep) {
switch(c) {
case '+':
System.out.println((numero1+numero2));
break;
case '-':
System.out.println((numero1-numero2));
break;
case '/':
System.out.println((numero1/numero2));
break;
case '*':
System.out.println((numero1*numero2));
break;
case '%':
System.out.println((numero1%numero2));
break;
case 'x':
nextStep=false;
execute=false;
break;
}
}
if(nextStep) {
boolean ok=false;
while(!ok) {
System.out.println("Continuare? [s] [n]: ");
try {
inString=reader.readLine();
} catch(Exception e) {
System.out.println(e);
execute=false;
}
if(inString.length()==1) {
if(inString.equals("n")) {
ok=true;
execute=false;
}
if(inString.equals("s")) {
ok=true;
}
}
}
}
}
}
}
Ciao.
Originally posted by "PGI"
A dirla tutta è la prima volta che faccio un programma interamente a linea di comando, non so se sia un buon esempio di programmazione...però funziona! :D
grazie l'ho aggiunto tra i miei file nel jcreator e va proprio bene!
ciao
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.