Homepage  Il progetto dsy.it è l'unofficial support site dei corsi di laurea del Dipartimento di Scienze dell'Informazione e del Dipartimento di Informatica e Comunicazione della Statale di Milano. E' un servizio degli studenti per gli studenti, curato in modo no-profit da un gruppo di essi. I nostri servizi comprendono aree di discussione per ogni Corso di Laurea, un'area download per lo scambio file, una raccolta di link e un motore di ricerca, il supporto agli studenti lavoratori, il forum hosting per Professori e studenti, i blog, e molto altro...
In questa sezione è indicizzato in textonly il contenuto del nostro forum


.dsy:it. .dsy:it. Archive > Didattica > Corsi A - F > Fondamenti di architettura e programmazione
 
problemino
Clicca QUI per vedere il messaggio nel forum
alfoguasta
perchè se inserisco per y=15 la x al termine del programma mi viene 4?


import prog.io.*;

class Asd {
static public void main(String[] args) {
ConsoleOutputManager video = new ConsoleOutputManager();
ConsoleInputManager tastiera = new ConsoleInputManager();

int x, y;
y= tastiera.readInt();
x=0;
while ((x*x)<y)
x++;
video.println(x);
}
}

korn
Perché quando quando x arriva a 3 la condizione del while è ancora valida (3 * 3 = 9, quindi < 15) ed esegue ancora una volta il ciclo.

La soluzione è prendere come risultato x-1.

c3ru
ops

ciops
Intervento del moderatore:
La risposta è stata data in maniera esaudiente, Chiudo:D

Powered by: vbHome (lite) v4.1 and vBulletin v2.3.1 - Copyright ©2000 - 2002, Jelsoft Enterprises Limited
Mantained by dsy crew (email) | Collabora con noi | Segnalaci un bug | Archive | Regolamento |Licenze | Thanks | Syndacate