Aiuto per 2 codifiche java

saverioapple

Nuovo Utente
4 Gen 2015
1
1
0
Ciao raga sono nuovo nel forum. Mi servirebbero le codifiche java di questi due problemi con ciclo while sto impazzendo non riesco a farle:
-Dati in input (da console) la descrizione e il prezzo di n articoli visualizzare i dati dell'articolo più costoso.
-Dati in input (da console) un valore intero visualizzarlo in base 2.
Aspetto vostre risposte. Grazie in anticipo.
 
  • Like
Reactions: ottofonsuppost

Vins

Moderatore
Membro dello Staff
MOD
28 Lug 2009
238
19
0
Ciao, in questo forum possiamo aiutarti a risolvere alcuni dubbi o problemi ma non possiamo scrivere il codice al posto tuo.
 
  • Like
Reactions: ottofonsuppost

narc0x

Utente Attivo
10 Ott 2008
128
2
18
Ciao, ti linko alcune info prese su internet (googlando per 5 secondi):

http://www.mkyong.com/java/how-to-get-the-standard-input-in-java/

Per convertire un intero in base 2 basta fare:

Codice:
Integer.toString(x, 2)
Come dice giustamente Vins, non possiamo fornirti porzioni di codice...noi ti possiamo indirizzare, al resto ci devi pensare tu :D
 
  • Like
Reactions: ottofonsuppost

ottofonsuppost

Utente Attivo
10 Mag 2016
170
13
18
Nella LIBRERIA STANDARD JAVA esiste il package JAVA.UTIL; questa JAVA.UTIL consente la lettura dell’INPUT fornito dalla tastiera(e fornito anche da altri dispositivi, ad esempio da un FILE). Quindi importeremo all’inizio del programma il package JAVA.UTIL, inserendo questa riga di codice:
import java.util.*;

Mettendo l’asterisco * stiamo dicendo al programma di importare TUTTI I METODI che esistono in quel package(package significa PACCHETTO).

La LIBRERIA STANDARD contiene anche il pacchetto SYSTEM; SYSTEM contiene 3 campi statici: IN – OUT – ERR

System.in è uno stream di ingresso e concide con la TASTIERA
System.out è uno stream di uscita e coincide con la CONSOLE

In JAVA.UTIL esiste la classe SCANNER e per leggere un dato dalla tastiera scriveremo

Scanner input = new Scanner(System.in);
String s = input.nextLine();
System.out.println("Ho letto: " + s);

Il problema ci chiede DESCRIZIONE DEL PRODOTTO e suo PREZZO; quindi dovremo creare N variabili; ci serviremo degli ARRAY e di una variabile contatore chiamata N umeroprodotti, e di una variabile che ci dica il prezzo massimo e ci serviremo di un’altra variabile che memorizza dove è nell’array prezzoDelProdotto il suo massimo.

DescrizioneProdotto [];
prezzoDelProdotto[];
int numeroProdotti = 0;
float prezzoMassimo = 0;
int posizionePrezzoMassimo = 0;

Codice:
import java.util.*;

public class ProgeUno {

		    public static void main(String[] args) {
	     
                         //PRIMA PARTE
		    	Scanner input = new Scanner(System.in);
		    	String s = input.nextLine();
		    	System.out.println("Hai inserito da tastiera "+s);
// LA VARIABILE STRINGA S CONTIENE COSA ABBIAMO INSERITO DA TASTIERA
// DATE RUN E INSERITE LA FRASE il serpente non lo sopporto E PREMETE IL TASTO INVIO
		    	
		    	
		            	//SECONDA PARTE
		    String	DescrizioneProdotto [] = new String [11] ;
		    float	prezzoDelProdotto [] = new float [11];
		   	int numeroProdotti = 0;
		   	float prezzoMassimo = 0;
		   	int posizionePrezzoMassimo = 0;
		   	
		   	System.out.println("inserisci descrizione prodotto ");
		   	DescrizioneProdotto [1] = input.nextLine();
		   	System.out.println("inserisci prezzo del prodotto ");
		   	prezzoDelProdotto [1] = input.nextFloat();
		   	
		   	System.out.println("1 "+DescrizioneProdotto [1]+" prezzo "+prezzoDelProdotto [1]);	
		   
/*
 * DANDO RUN AL PROGRAMMA verrà eseguita la prima parte che serviva solo
  a far vedere come agiva un inserimento da tastiera
  
  ora voi inserite UNA PAROLA QUALSIASI
  e poi rispondete ed INSERITE IN DESCRIZIONE PRODOTTO bibita aranciata
  e IN PREZZO 4,50  
*/

		    	}
	    	           }
 
Ultima modifica:

ottofonsuppost

Utente Attivo
10 Mag 2016
170
13
18
il programma fatto contiene un limite: gli ARRAY possono contenere solo 11 prodotti(da zero a 10). Per creare un ARRAY che si espande dovremo usare la classe VECTOR o la classe ARRAYLIST che si trovano sempre nel pacchetto JAVA.UTIL.
Comunque, utilizzando il listato: create un ciclo FOR che per 11 volte RIPETE le ISTRUZIONI DI INSERIMENTO PRODOTTO E PREZZO; poi con un altro ciclo FOR controllate tutti gli ARRAY prezzoDelProdotto, fate il confronto con la variabile prezzoMassimo e se trova un nuovo massimo, assegnate a prezzoMassimo il nuovo massimo trovato e a posizionePrezzoMassimo la variabile di INCREMENTO che avete utilizzato nel ciclo, ad esempio la “i” i++.

for(int i=0; i<12; i++)

Potete utilizzare invece del ciclo FOR, il ciclo WHILE o il ciclo DO WHILE

Saluti e abbracci, OTTOFONSUPPOST
 
Ultima modifica:

ottofonsuppost

Utente Attivo
10 Mag 2016
170
13
18
Alla prima e seconda parte del programma, aggiungete la terza parte, che vi fa vedere un numero intero convertito in BINARIO

Come diceva NarcOx è l'istruzione Integer.toString(x, 2) a compiere la trasformazione

Codice:
   	// TERZA PARTE trasformazione di un numero nel SISTEMA BINARIO
//utilizziamo una variabile intera già esistente nel programma
//facendo girare il programma due volte: la prima volta a INSERITE IL NUMERO INTERO scrivete 5 ED OTTERRETE IL BINARIO 101;
//la seconda volta scrivete 12 ed otterrete il binario 1100		   	
		   	
		
		   	System.out.println("inserisci UN NUMERO, INTERO E SENZA VIRGOLA ");	
		   	numeroProdotti = input.nextInt();
		   	System.out.println("il numero intero "+numeroProdotti+" equivale nel SITEMA BINARIO a "+Integer.toString(numeroProdotti, 2));
Arisaluti e ariabbracci, OTTOFONSUPPOST.
 
Ultima modifica: