Computer_Zone
Vuoi reagire a questo messaggio? Crea un account in pochi click o accedi per continuare.

CREARE IL PROPRIO VIDEOGAME IN C#: SETTIMA PARTE

Andare in basso

CREARE IL PROPRIO VIDEOGAME IN C#: SETTIMA PARTE Empty CREARE IL PROPRIO VIDEOGAME IN C#: SETTIMA PARTE

Messaggio  Admin Dom Mag 10, 2009 9:02 pm

7) LA PRIMA ISTRUZIONE DI CONTROLLO: if ... else

Abbiamo già parlato sommariamente dell'istruzione if nella seconda lezione ed ora vedremo come utilizzarla concretamente così da prendere confidenza con le istruzioni di controllo ovvero quelle istruzioni che controlleranno il flusso del programma, cioè la cronologia dell'esecuzione dei metodi e di tutta l'applicazione/gioco. Essi vengono chiamati anche costrutti.
I costrutti non sono molti, comunque noi, per le prime lezioni, vedremo solo quelli principali e per il momento ci atterremo all'if.
Tenete conto che la conoscienza dei costrutti sta alla base della programmazione e non se ne potrà fare a meno.

Ormai conosciamo la classe Console ed uno dei suoi metodi, WriteLine, che ci permette di stampare a video un testo.
Come già detto, la classe Console possiede tanti altri metodi. E' arrivato il momento di utilizzane un'altro: ReadLine().

Il metodo ReadLine() permette di leggere una stringa inserita dall'utente. In pratica legge una sequenza di caratteri fino a quando non si preme il tato Enter (Invio).


using System;

class Evviva
{

static void Main()
{
string pippo; //Dichiariamo la variabile pippo, ma non la impostiamo

Console.WriteLine("Inserisci una stringa: "); //Facciamo stampare su schermo una stringa, è la richiesta di inserimento

pippo = Console.ReadLine(); //Ecco il metodo che legge ciò che abbiamo inserito da tastiera e lo assegna alla variabile pippo

Console.WriteLine(pippo); //Stampa a video quello che abbiamo scitto

}

}


Innanzitutto dichiariamo la variabile, di tipo string, pippo. Ovviamente non dovremo "riempirla", cioè impostarla, perchè sarà l'utente che scriverà sulla tastiera ad impostarla, nel momento in cui premerà il tasto Invio.

Infatti questa riga:

pippo = Console.ReadLine();

non solo fermerà l'esecuzione del programma in attesa dell'input dalla tatiera ma, nel momento della pressione del tasto Invio, "riempirà" la variabile pippo con il testo inserito dall'utente. Tutto ciò in questa sola riga.
Finalmente il termine variabile ha un senso! Ora si che varia.

Ma dov'è questo benedetto if?
Ora ce lo mettiamo. Faremo in modo che, se l'utente scrive una parola succederà qualche cosa, altrimenti ne succederà un'altra.
Ripeto: SE si inserisce una determinata parola succederà una cosa ALTRIMENTI ne succederà un'altra.





SE(pippo=="Mario")
{
fai questo
}
ATRIMENTI
{
fai quest'altro
}
C'è qualche cosa che non va? Due uguale? Un errore di battitura? No, non questa volta :-).
E altrimenti che robba è? Come lo scrivo?

Altrimenti si scrive: else . Dunque:






if(pippo=="Mario")
{
fai questo
}
else
{
fai quest'altro
}

L'istruzione "fai questo" verrà eseguita solo se la condizione dentro l'if risulterà vera (true), dunque, nel nostro caso, solo se la variabile pippo sarà uguale a "Mario".
Se la condizione dentro l'if risulterà falsa (false), verrà eseguita l'istruzione "fai quest'altro".
Perchè i due uguale?
Molto semplicemente perchè, per verificare un'ugualianza si usano due eguale. Mentre per definire una variabile se ne usa uno solo, come abbiamo fatto fino ad ora.

Dunque, se volessimo assegnare un valore ad una variabile dovremo usare un solo uguale, mentre, per verificare l'ugualianza ne useremo due. Se per esempio volessimo assegnare il valore "Mario" alla variabile pippo scriveremo:

pippo="Mario";

mentre se volessimo controllare se pippo è uguale a "Mario" scriveremo:

pippo=="Mario";

In pratica i due uguale stanno a significare una domanda: "Ma pippo è uguale a "Mario"?"
Mentre un uguale è un'affermazione: "pippo è uguale a "Mario".

Il simbolo == fa parte degli operatori chiamati di confronto (o relazionali) che vedremo tra poco.

Torniamo al nostro codice:


using System;

class Evviva
{

static void Main()
{
string pippo;

Console.WriteLine("Inserisci una stringa: ");

pippo = Console.ReadLine();



if (pippo == "Mario")
{
Console.WriteLine("Si, hai scritto Mario");
}
else
{
Console.WriteLine("No, non hai scritto Mario");
}



}

}



Tutto chiaro? Questo esempio sarà ripreso tra poco per vedere meglio gli altri operatori di confronto.
Admin
Admin
Admin

Messaggi : 17
Data di iscrizione : 14.02.09
Età : 32
Località : Vicenza

https://computerzone.elencoforum.com

Torna in alto Andare in basso

Torna in alto

- Argomenti simili

 
Permessi in questa sezione del forum:
Non puoi rispondere agli argomenti in questo forum.