DATI DI INPUT
Il file input.txt contiene l'importo del prelievo. Il file è costituito da un'unica riga di testo,
contenente un numero (senza puntini o virgole che raggruppano le cifre a tre a tre!).
DATI DI OUTPUT
Il programma, dopo aver letto il file di input, deve calcolare il numero di banconote necessario
per ognuno dei tagli disponibili, e scriverlo su un file di nome output.txt. Più precisamente, il
file output.txt deve contenere cinque righe, che corrispondono (in ordine, dalla prima
all'ultima) alle banconote da 100.000, 10.000, 5.000, 2.000 e 1.000. Ogni riga deve contenere
un unico numero intero, che rappresenta il numero di banconote di quel taglio necessarie.
Esempio:
File input.txt
152000
Fìle output.txt
1
5
0
1
0
solo che sull'OUTPUT invece di stampare 1 caporiga 5 caporiga 0 caporiga 1 caporiga 0,,,,, mi stampa solo l'ultimo valore cioè 0 sul file di output,,,, qualcuno mi aiuti?? e magari anche su come migliorarlo?? ,, grazie,,,
codice:import java.util.Scanner; import java.io.*; import java.io.PrintWriter; import java.io.File; import java.io.IOException; class Camillo{ public static void main(String[] args) throws Exception{ Scanner filein=new Scanner (new FileInputStream("dati.txt")); int soldi, resto, ask; int countc[]= new int[5]; int b; soldi=filein.nextInt(); filein.close(); countc[0] =soldi / 100000; resto= soldi % 100000; soldi = resto; countc[1] = soldi / 10000; resto = soldi % 10000; soldi = resto; countc[2] = soldi / 5000; resto = soldi % 5000; soldi = resto; ask= soldi / 2000; if (ask == 0) countc[3] = ask; else { countc[3]= ask; resto = soldi % 2000; soldi = resto; } countc[4]= soldi / 1000; for(int a=0; a<5; a++){ b = countc[a]; try { File my_file = new File("output.txt"); PrintWriter pw = new PrintWriter(my_file); pw.println(b); pw.close(); } catch(IOException eccezione){ System.out.println("Errore di apertura del file di uscita"); } }

Rispondi quotando