Top Banner
MC102 - Algoritmos e programa¸ ao de computadores Aula 7: Comandos Repetitivos while e do-while
21

Aula 7: Comandos Repetitivos while e do-whileislene/mc102/aula07/aula07.pdf · MC102 - Algoritmos e programa˘c~ao de computadores Aula 7: Comandos Repetitivos while e do-while. Como

Dec 15, 2018

Download

Documents

lamque
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Aula 7: Comandos Repetitivos while e do-whileislene/mc102/aula07/aula07.pdf · MC102 - Algoritmos e programa˘c~ao de computadores Aula 7: Comandos Repetitivos while e do-while. Como

MC102 - Algoritmos e programacao de computadores

Aula 7: Comandos Repetitivos

while e do-while

Page 2: Aula 7: Comandos Repetitivos while e do-whileislene/mc102/aula07/aula07.pdf · MC102 - Algoritmos e programa˘c~ao de computadores Aula 7: Comandos Repetitivos while e do-while. Como

Como imprimir os 3 primeiros

numeros ımpares?

printf("1\n");

printf("3\n");

printf("5\n");

Page 3: Aula 7: Comandos Repetitivos while e do-whileislene/mc102/aula07/aula07.pdf · MC102 - Algoritmos e programa˘c~ao de computadores Aula 7: Comandos Repetitivos while e do-while. Como

Como imprimir os 100 primeiros

numeros ımpares?

printf("1\n");

printf("3\n");

/* Varios comandos depois... */

printf("199\n");

Page 4: Aula 7: Comandos Repetitivos while e do-whileislene/mc102/aula07/aula07.pdf · MC102 - Algoritmos e programa˘c~ao de computadores Aula 7: Comandos Repetitivos while e do-while. Como

Como imprimir os n primeiros

numeros ımpares?

“Solucao” para n <= 100

if (n <= 1) printf("1\n");

if (n <= 2) printf("3\n");

/* Varios comandos depois... */

if (n <= 100) printf("199\n");

Page 5: Aula 7: Comandos Repetitivos while e do-whileislene/mc102/aula07/aula07.pdf · MC102 - Algoritmos e programa˘c~ao de computadores Aula 7: Comandos Repetitivos while e do-while. Como

Como imprimir os n primeiros

numeros ımpares?

impar = 1;

i = 0;

while (i < n) {

printf("%d\n", impar);

impar += 2;

i++;

}

Page 6: Aula 7: Comandos Repetitivos while e do-whileislene/mc102/aula07/aula07.pdf · MC102 - Algoritmos e programa˘c~ao de computadores Aula 7: Comandos Repetitivos while e do-while. Como

Como imprimir os n primeiros

numeros ımpares?

impar = 1;

while (n > 0) {

printf("%d\n", impar);

impar += 2;

n--;

}

Page 7: Aula 7: Comandos Repetitivos while e do-whileislene/mc102/aula07/aula07.pdf · MC102 - Algoritmos e programa˘c~ao de computadores Aula 7: Comandos Repetitivos while e do-while. Como

Como imprimir os n primeiros

numeros ımpares?

Ordem decrescente

while (n > 0) {

printf("%d\n", 2*n - 1);

n--;

}

Page 8: Aula 7: Comandos Repetitivos while e do-whileislene/mc102/aula07/aula07.pdf · MC102 - Algoritmos e programa˘c~ao de computadores Aula 7: Comandos Repetitivos while e do-while. Como

Comando while

while (<condicao>)

comando;

while (<condicao>) {

comando_1;

/* ... */

comando_n;

}

Page 9: Aula 7: Comandos Repetitivos while e do-whileislene/mc102/aula07/aula07.pdf · MC102 - Algoritmos e programa˘c~ao de computadores Aula 7: Comandos Repetitivos while e do-while. Como

Soma de n valores inteiros

soma = 0;

while (n > 0) {

printf("numero a ser somado: ");

scanf("%d", &parcela);

soma += parcela;

n--;

}

printf("Soma: %d\n", soma);

Page 10: Aula 7: Comandos Repetitivos while e do-whileislene/mc102/aula07/aula07.pdf · MC102 - Algoritmos e programa˘c~ao de computadores Aula 7: Comandos Repetitivos while e do-while. Como

Soma ate 0

soma = 0;

printf("numero a ser somado (0 para sair): ");

scanf("%d", &parcela);

while (parcela != 0) {

soma += parcela;

printf("numero a ser somado (0 para sair): ");

scanf("%d", &parcela);

}

printf("Soma: %d\n", soma);

Page 11: Aula 7: Comandos Repetitivos while e do-whileislene/mc102/aula07/aula07.pdf · MC102 - Algoritmos e programa˘c~ao de computadores Aula 7: Comandos Repetitivos while e do-while. Como

Eco ate 0

printf("numero a ser ecoado: ");

scanf("%d", &i);

while (i > 0) {

printf("%d\n", i);

printf("numero a ser ecoado: ");

scanf("%d", &i);

}

Page 12: Aula 7: Comandos Repetitivos while e do-whileislene/mc102/aula07/aula07.pdf · MC102 - Algoritmos e programa˘c~ao de computadores Aula 7: Comandos Repetitivos while e do-while. Como

Comando do-while

do

comando;

while (<condicao>);

do {

comando_1; /* ... */ comando_n;

} while (<condicao>);

Page 13: Aula 7: Comandos Repetitivos while e do-whileislene/mc102/aula07/aula07.pdf · MC102 - Algoritmos e programa˘c~ao de computadores Aula 7: Comandos Repetitivos while e do-while. Como

Soma ate 0

soma = 0;

do {

printf("numero a ser somado (0 para sair): ");

scanf("%d", &parcela);

soma += parcela;

} while (parcela != 0);

printf("Soma: %d\n", soma);

Page 14: Aula 7: Comandos Repetitivos while e do-whileislene/mc102/aula07/aula07.pdf · MC102 - Algoritmos e programa˘c~ao de computadores Aula 7: Comandos Repetitivos while e do-while. Como

Eco ate 0

do {

printf("numero a ser ecoado: ");

scanf("%d", &i);

if (i > 0)

printf("%d\n", i);

} while (i > 0);

Page 15: Aula 7: Comandos Repetitivos while e do-whileislene/mc102/aula07/aula07.pdf · MC102 - Algoritmos e programa˘c~ao de computadores Aula 7: Comandos Repetitivos while e do-while. Como

Maximo divisor comum

Algoritmo de Euclides

m = 225

n = 64

| x | y | r |

| 225| 64| 33 |

| 64| 33| 31 |

| 33| 31| 2 |

| 31| 2| 1 |

| 2| 1| 0 |

MDC entre 225 e 64 = 1

Page 16: Aula 7: Comandos Repetitivos while e do-whileislene/mc102/aula07/aula07.pdf · MC102 - Algoritmos e programa˘c~ao de computadores Aula 7: Comandos Repetitivos while e do-while. Como

Arte em ASCII

Como imprimir uma linha de ’*’s

***********

Page 17: Aula 7: Comandos Repetitivos while e do-whileislene/mc102/aula07/aula07.pdf · MC102 - Algoritmos e programa˘c~ao de computadores Aula 7: Comandos Repetitivos while e do-while. Como

Arte em ASCII

***********

**********

*********

********

*******

******

*****

****

***

**

*

Page 18: Aula 7: Comandos Repetitivos while e do-whileislene/mc102/aula07/aula07.pdf · MC102 - Algoritmos e programa˘c~ao de computadores Aula 7: Comandos Repetitivos while e do-while. Como

Arte em ASCII

*****

****

***

**

*

*

**

***

****

*****

Page 19: Aula 7: Comandos Repetitivos while e do-whileislene/mc102/aula07/aula07.pdf · MC102 - Algoritmos e programa˘c~ao de computadores Aula 7: Comandos Repetitivos while e do-while. Como

Arte em ASCII

************

***** *****

**** ****

*** ***

** **

* *

* *

** **

*** ***

**** ****

***** *****

************

Page 20: Aula 7: Comandos Repetitivos while e do-whileislene/mc102/aula07/aula07.pdf · MC102 - Algoritmos e programa˘c~ao de computadores Aula 7: Comandos Repetitivos while e do-while. Como

Arte em ASCII

*

***

*****

*******

*********

*******

*****

***

*

Page 21: Aula 7: Comandos Repetitivos while e do-whileislene/mc102/aula07/aula07.pdf · MC102 - Algoritmos e programa˘c~ao de computadores Aula 7: Comandos Repetitivos while e do-while. Como

Arte em ASCII

\ * /

\ *** /

\*****/

\***/

\*/

/*\

/***\

/*****\

/ *** \

/ * \