>> ZAMYLA CHAN: salto Facciamo in Mario.
Mario è un programma dove faremo il nostro proprio, sia pure primitiva, versione di
un classico Super Mario Brothers sfondo gioco.
Per questo problema insieme, stiamo andando per ricreare la mezza piramide per
Mario a saltare su.
Il nostro programma sarà interattivo, in modo da chiederà all'utente di inserire un certo
altezza della piramide.
E il programma stamperà un mezza piramide di quell'altezza, dove la
fondo hash sinistro sia allineato con il fondo nell'angolo sinistro del terminale
finestra di uscita.
>> Rompiamo questo problema in due parti, uno, ottenere l'input dell'utente, e due,
stampare la piramide.
Ricordate che se la funzione GetInt recupererà un numero intero, si
fare in modo che questo ingresso fa senso per il vostro programma, quindi in
Mario, che non farà solo una prodotto per un numero intero.
Avrai bisogno di fare in modo che l'utente input un numero intero che è all'interno del
limiti inferiore e superiore del piramide che è possibile stampare.
Per questa specifica, questo è 0 e 23 inclusi.
Se l'utente inserisce un numero intero di fuori dei nostri limiti accettati, allora vogliamo
per richiedere di nuovo e di nuovo fino a quando ci danno un intero valido.
>> Un modo per garantire l'input dell'utente è corretta utilizzando un ciclo Do-While, che è
molto simile ad un ciclo While.
Il ciclo do-while esegue il codice all'interno del corpo una volta, e quindi controlla
se la condizione è soddisfatta o meno.
Ciò è utile per ottenere input dell'utente perché si sa che avete bisogno di
spingerli almeno una volta.
Se la condizione non è soddisfatta, il programma eseguirà la linea dopo
il vostro Do-While.
Se la condizione è soddisfatta, anche se, il ciclo si ripeterà.
>> Un ciclo Do-While per la convalida utente ingresso sarà simile a questa.
Dichiaro una variabile n, GetInt, e ripetere fino a quando n è valida.
Ricordate che quando si dichiara la variabile, necessita l'appropriato
campo di applicazione, proprio come in Scratch.
Se io dichiaro n per dentro il mio Do-While, il resto del programma non sarà
in grado di accedervi.
È limitata entro i confini delle parentesi graffe.
>> Bene, ora che abbiamo convalidato l'input dell'utente, abbiamo effettivamente bisogno di
disegnare questa mezza piramide.
E 'composto di caratteri stampati, così facciamo una mezza piramide in un semplice
editor di testo.
Se vogliamo fare uno stile piramide Mario di altezza tre che è allineato
sul lato sinistro della nostra finestra, poi avremmo tipo due hash, fare clic su Invio,
quindi digitare tre hash, fare clic su Invio, quindi digitare quattro.
>> Ma in questo problema proposto, la nostra mezza piramide deve essere allineato a destra.
Utilizzo di una tastiera standard, come potrebbe si modifica il file di spostare gli hash
sul lato destro?
Potrei utilizzare caratteri di sottolineatura, due sul fila superiore e uno al secondo.
Non sembra così bello, però, in modo cerchiamo di sostituire la sottolineatura con
spazi, e non ci abbiamo una mezza piramide altezza di tre.
>> Cercate di ricordare questo editor di testo esempio, come si inizia a pensare torna a
C. Facciamo cercare di capire un po 'di tipo di schema che possiamo
mettere in un costrutto di ciclo.
Prendete un altezza esempio, diciamo otto, e vedere se è possibile iniziare a
venire con un modello.
La prima riga avrà sette spazi seguito da due hash.
La seconda fila avrà sei spazi e tre gli hash, e così via fino a quando la
ottava fila.
>> Ma come si potrebbe rappresentare l'ennesima riga?
Ricorda che convenzione programmazione è zero indicizzati.
Ciò significa che si inizia a contare da pari a zero, in modo che la prima riga è tecnicamente
numero di riga a zero con due portelli, fila numero uno ha tre hash, riga
numero due ha quattro hash, in modo da seguire questo modello qualsiasi riga
numero n, ci sono n più 2 hash.
Lascio a voi, però, di trovare il schema per gli spazi.
Ricordate che il vostro modello sarà leggermente diverso se si sceglie di
avviare il conteggio da uno e non zero.
>> Ora, si ha un modello per qualsiasi riga astratto n.
Sapete come molti spazi da stampare e quanti hash, quindi per ogni riga, che
numero cambia.
Ma lo stesso processo di stampa di un personaggio unico, uno spazio o un
hash, viene ripetuto.
Quindi tutto quello che dovete fare è ripetutamente stampare quel personaggio per il numero di volte
come il vostro modello determina.
>> Quindi, come possiamo ripetere i processi?
In Scratch, abbiamo usato il blocco di ripetizione.
In C, useremo un ciclo For.
Diamo un'occhiata alla sintassi per i cicli for.
>> Ogni ciclo For è composto da tre parti, una inizializzazione, condizione,
e un aggiornamento.
Il tuo ciclo For inizializza una variabile quando prima
entra nel ciclo For.
Se la condizione è soddisfatta, il corpo del ciclo verrà eseguito.
In seguito, l'aggiornamento verrà eseguito.
>> Se la condizione è ancora soddisfatta, il loop verrà eseguito e aggiornare e
ripetere fino a quando la sua condizione restituisce true.
Sei condizione deve infine valutare a false, però, perché
a differenza di Scratch, non lo facciamo Per qualsiasi loop per sempre.
Il vostro programma deve terminare alla fine.
>> Ecco un esempio di un ciclo For che si potrebbe desiderare di utilizzare per Mario.
L'inizializzazione dichiara un i numero intero con valore 0.
Fino a quando i è inferiore all'altezza, il corpo del loop verrà eseguito e
aumentare i di uno e ripetere fino a quando i è maggiore o
uguale all'altezza.
>> Ora, il mio ciclo For è indice zero.
L'INT parte da zero, non uno.
Se ho scelto uno, allora la mia condizione sarebbe devono anche essere diverso per
il loop per eseguire l' stesso numero di volte.
Ricordate questa attenzione quando si è la scelta della inizializzazione e la vostra
condizione, e consultare questo grafico a doppio controllo.
>> Una delle grandi cose di informatica scienza è che non c'è proprio tanti
modi per eseguire le cose.
È possibile scegliere se si iniziare da zero o uno.
Se non si desidera utilizzare un ciclo For, è anche possibile utilizzare un ciclo while per
ripetere affermazioni finché si mantenere l'essenza di un ciclo For,
inizializzazione, condizione e aggiornamento.
Una volta che capiamo il ciclo For che noi siamo più comodi con, quindi abbiamo
può completare Mario.
>> Siamo arrivati ​​per l'input dell'utente e poi identificato un
modello per ogni riga n.
Quindi per ogni riga da zero a n meno 1 stamperà il numero appropriato di
spazi, quindi il numero appropriato di hash in base al nostro modello, e
poi una nuova linea.
Con questo, avete la vostra piramide.
Il mio nome è Zamyla, e questo è stato Mario.