ces-10 introduÇÃo À computaÇÃo aulas práticas – 2014 capítulo i comandos simples e...

26
CES-10 INTRODUÇÃO À CES-10 INTRODUÇÃO À COMPUTAÇÃO COMPUTAÇÃO Aulas Práticas – 2014 Aulas Práticas – 2014 Capítulo I Capítulo I Comandos Simples e Comandos Simples e Repetições Repetições

Upload: internet

Post on 22-Apr-2015

113 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

CES-10 INTRODUÇÃO CES-10 INTRODUÇÃO À COMPUTAÇÃOÀ COMPUTAÇÃO

Aulas Práticas – 2014Aulas Práticas – 2014

Capítulo I Capítulo I

Comandos Simples e Comandos Simples e RepetiçõesRepetições

Page 2: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

Preparo do Ambiente:Preparo do Ambiente:

Criar no diretório Criar no diretório “C:\Usuarios”“C:\Usuarios” a pasta a pasta “CES-“CES-10 T3 2014”10 T3 2014”

Todos os arquivos criados nas Todos os arquivos criados nas aulas de aulas de laboratóriolaboratório da da Turma 3Turma 3 deverão ser colocados deverão ser colocados nessa pastanessa pasta

Cada Cada programa digitadoprograma digitado será guardado num será guardado num arquivoarquivo de extensão de extensão .c.c

A compilação e execução de um programa gera A compilação e execução de um programa gera dois arquivosdois arquivos com o mesmo nome, mas com com o mesmo nome, mas com extensões diferentes extensões diferentes ((.o.o: programa objeto : programa objeto e e .exe.exe: programa executável): programa executável)

Page 3: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

Programa 1.1: Comandos de saída de Programa 1.1: Comandos de saída de resultadosresultados

Abrir o Abrir o CodeBlocksCodeBlocks

Clicar em Clicar em File/New/Empty fileFile/New/Empty file

DigitarDigitar o programa a seguir o programa a seguir

Page 4: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

#include <stdio.h>#include <stdio.h>

#include <stdlib.h>#include <stdlib.h>

int main () {int main () {

printf ("Ola pessoal!");printf ("Ola pessoal!");

printf ("\n\n");printf ("\n\n");

return 0;return 0;

}}

Clicar em Clicar em FileFile e salvar como e salvar como “Saida.c”“Saida.c” na na pasta pasta “CES-10 T3 2014”“CES-10 T3 2014”

Clicar no botão Clicar no botão (build and run(build and run) para ) para compilar e executarcompilar e executar

Page 5: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

#include <stdio.h>#include <stdio.h>

#include <stdlib.h>#include <stdlib.h>

int main () {int main () {

printf ("Ola pessoal!");printf ("Ola pessoal!");

printf ("\n\n");printf ("\n\n");

return 0;return 0;

}}

printf ("Ola pessoal!")printf ("Ola pessoal!"):: escreve no vídeo o que escreve no vídeo o que estiver entre aspas estiver entre aspas (“- - - - -”)(“- - - - -”), exceto as aspas, exceto as aspas

printf ("\n\n")printf ("\n\n"):: não escreve osnão escreve os dois dois “\n”s“\n”s; para ; para cada cada “\n”“\n”, o cursor do vídeo vai para o início da , o cursor do vídeo vai para o início da linha seguintelinha seguinte

Resultado na tela:

Page 6: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

Examinar no Examinar no Windows ExplorerWindows Explorer a pasta a pasta “CES-10 T3 2014” “CES-10 T3 2014” e constatar a geração de e constatar a geração de dois outros arquivos:dois outros arquivos:

Saida.o: Saida.o: programa objeto gerado pelo programa objeto gerado pelo AssemblerAssembler

Saida.exe: Saida.exe: programa executávelprograma executável

■ Agora, clicar duas vezes em Agora, clicar duas vezes em Saida.exeSaida.exe

■ A A telatela de execução de execução abreabre, escreve , escreve “Ola “Ola pessoal!” pessoal!” ee fecha fecha em seguida, não em seguida, não possibilitando a possibilitando a visualizaçãovisualização do resultado do resultado

Page 7: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

Rodando dentro do Rodando dentro do CodeBlocksCodeBlocks::

A execução do programa se encerra e o A execução do programa se encerra e o CodeBlocksCodeBlocks emite a mensagem: emite a mensagem:

Process returned 0 (0x0) execution time : Process returned 0 (0x0) execution time : 0.050 s0.050 s

Press any key to continuePress any key to continue

Rodando fora do Rodando fora do CodeBlocksCodeBlocks, a execução do , a execução do programa se encerra e a tela de execução é programa se encerra e a tela de execução é apagadaapagada

Alterando o programa para a tela não apagar:Alterando o programa para a tela não apagar:

Page 8: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

#include <stdio.h>#include <stdio.h>

#include <stdlib.h>#include <stdlib.h>

int main () {int main () {

printf ("Ola pessoal!");printf ("Ola pessoal!");

printf ("\n\n");printf ("\n\n");

system ("pause");system ("pause");

return 0;return 0;

}}

Clicar em Clicar em SaveSave e clicar no botão e clicar no botão (build (build and runand run) para compilar e executar) para compilar e executar

system ("pause")system ("pause"): : emite a mensagem emite a mensagem “Pressione qualquer tecla para continuar “Pressione qualquer tecla para continuar …”…” e fica esperando a digitação e fica esperando a digitação

Resultado na tela

Page 9: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

#include <stdio.h>#include <stdio.h>

#include <stdlib.h>#include <stdlib.h>

int main () {int main () {

printf ("Ola pessoal!");printf ("Ola pessoal!");

printf ("\n\n");printf ("\n\n");

system ("pause");system ("pause");

return 0;return 0;

}}

Executar o programa fora do Executar o programa fora do CodeBlocks CodeBlocks (clicar duas vezes em (clicar duas vezes em Saida.exeSaida.exe))

A tela de execução só apaga quando algo for A tela de execução só apaga quando algo for digitadodigitado

Resultado na tela

Page 10: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

Alterar o programa para:Alterar o programa para:

////#include <stdio.h>#include <stdio.h>

#include <stdlib.h>#include <stdlib.h>

int main () {int main () {

printf ("Ola pessoal!");printf ("Ola pessoal!");

printf ("\n\n");printf ("\n\n");

system ("pause");system ("pause");

return 0;return 0;

}}

Salvar e executarSalvar e executar

Numa linha, tudo após “//” se torna um “comentário”

Comentários são eliminados do programa-fonte pelo compilador

Page 11: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

Alterar o programa para:Alterar o programa para:

////#include <stdio.h>#include <stdio.h>

#include <stdlib.h>#include <stdlib.h>

int main () {int main () {

printf ("Ola pessoal!");printf ("Ola pessoal!");

printf ("\n\n");printf ("\n\n");

system ("pause");system ("pause");

return 0;return 0;

}}

Salvar e executarSalvar e executar

Depois da execução, a mensagem de compilação (build messages):

warning: incompatible implicit declaration of built-in function ‘printf’ (enabled by default)

A função “printf” pertence ao arquivo “stdio.h” da biblioteca da Linguagem C

O comentário retirou a inclusão desse arquivo

Mesmo assim o compilador aceitou o programa, mas avisou o ocorrido

Page 12: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

Alterar o programa para:Alterar o programa para:

//#include <stdio.h>//#include <stdio.h>

#include <stdlib.h>#include <stdlib.h>

int main () {int main () {

printf ("Ola pessoal!");printf ("Ola pessoal!");

printf ("\n\n");printf ("\n\n");

system ("pause");system ("pause");

return 0;return 0;

}}

Salvar e executarSalvar e executar

Há dois tipos de mensagens: warning e error

Warning: o compilador só avisa, mas faz a tradução

Error: o compilador avisa e não faz a tradução

A função “system” pertence ao arquivo “stdlib.h” da biblioteca da Linguagem C

No entanto, a eliminação de seu “include” não provoca “warning”

Page 13: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

Voltando ao programa sem Voltando ao programa sem “//”“//”, duplicando o , duplicando o primeiro primeiro printfprintf::

#include <stdio.h>#include <stdio.h>

#include <stdlib.h>#include <stdlib.h>

int main () {int main () {

printf ("Ola pessoal!"); printf ("Ola pessoal!");

printf ("Ola pessoal!");printf ("Ola pessoal!");

printf ("\n\n");printf ("\n\n");

system ("pause");system ("pause");

return 0;return 0;

}}

Salvar e executarSalvar e executar

Duas frases Duas frases “Ola pessoal!” “Ola pessoal!” na mesma linhana mesma linha

Page 14: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

Alterar o programa para:Alterar o programa para:

#include <stdio.h>#include <stdio.h>

#include <stdlib.h>#include <stdlib.h>

int main () {int main () {

printf ("Ola pessoal!printf ("Ola pessoal!\n\n");");

printf ("Ola pessoal!");printf ("Ola pessoal!");

printf ("\n\n");printf ("\n\n");

system ("pause");system ("pause");

return 0;return 0;

}}

Salvar e executarSalvar e executar

A segunda frase A segunda frase “Ola pessoal!” “Ola pessoal!” na linha na linha seguinteseguinte

Page 15: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

Programa 1.2: Repetições de comandos de Programa 1.2: Repetições de comandos de saídasaída

Clicar em Clicar em File/New/Empty fileFile/New/Empty file

DigitarDigitar o programa a seguir o programa a seguir

Salvá-lo como Salvá-lo como “SaidaRepetida.c”“SaidaRepetida.c” na pasta na pasta “CES-10 T3 2014” “CES-10 T3 2014” e executar e executar

Page 16: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

#include <stdio.h>#include <stdio.h>

#include <stdlib.h>#include <stdlib.h>

int main () {int main () {

i = 1;i = 1;

while (i <= 5) {while (i <= 5) {

printf ("Ola pessoal!\n");printf ("Ola pessoal!\n");

i = i + 1;i = i + 1;

}}

printf ("\n\n");printf ("\n\n");

system ("pause");system ("pause");

return 0;return 0;

}}

Mensagem de erro de compilação:

Símbolo não declarado ‘i’

É necessário declarar ‘i’

Page 17: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

Alterar o programa para:Alterar o programa para:

#include <stdio.h>#include <stdio.h>

#include <stdlib.h>#include <stdlib.h>

int main () {int main () {

int i;int i;

i = 1;i = 1;

while (i <= 5) {while (i <= 5) {

printf ("Ola pessoal!\n");printf ("Ola pessoal!\n");

i = i + 1;i = i + 1;

}}

printf ("\n\n");printf ("\n\n");

system ("pause");system ("pause");

return 0;return 0;

}}

int i: ‘i’ é uma variável inteira

Variável: nome ao qual está associado um local na memória, cujo valor pode ser alterado durante a execução

Salvar e executar

Page 18: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

Alterar o programa para:Alterar o programa para:

#include <stdio.h>#include <stdio.h>

#include <stdlib.h>#include <stdlib.h>

int main () {int main () {

int i;int i;

i = 1;i = 1;

while (i <= 5) {while (i <= 5) {

printf ("Ola pessoal!\n");printf ("Ola pessoal!\n");

i = i + 1;i = i + 1;

}}

printf ("\n\n");printf ("\n\n");

system ("pause");system ("pause");

return 0;return 0;

}}

Este programa só serve para escrever a frase 5 vezes

Que tal deixar o operador escolher o número de repetições?

Funcionamento do while:

i = 1

i ≤ 5

i = i + 1

“Ola pessoal!\n”

FV

Fluxograma

Page 19: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

Programa 1.3: Leitura amigável do número Programa 1.3: Leitura amigável do número de repetiçõesde repetições

Clicar em Clicar em File/New/EmptyFileFile/New/EmptyFile

DigitarDigitar o programa a seguir o programa a seguir

Salvá-lo como Salvá-lo como “Leitura.c”“Leitura.c” na pasta na pasta “CES-10 “CES-10 T3 2014” T3 2014” e executar e executar

Page 20: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

#include <stdio.h>#include <stdio.h>

#include <stdlib.h>#include <stdlib.h>

int main () {int main () {

int i, n;int i, n;

printf ("Digite o numero de repeticoes: ");printf ("Digite o numero de repeticoes: ");

scanf ("%d", &n);scanf ("%d", &n);

i = 1;i = 1;

while while (i <= n)(i <= n) { {

printf ("\nOla pessoal!");printf ("\nOla pessoal!");

i = i + 1;i = i + 1;

}}

printf ("\n\n");printf ("\n\n");

system ("pause");system ("pause");

return 0;return 0;

}}

Variável inteira ‘n’: destinada a guardar o número de repetições a ser digitado

Espera a digitação de um número inteiro (%d)

Lê o número digitado, guardando-o no endereço da variável ‘n’ (&n)

Torna a leitura amigável: o operador saberá o que o programa fica esperando

Page 21: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

Programa 1.4: Escrita do valor de variáveisPrograma 1.4: Escrita do valor de variáveis

Quase sempre, é necessário escrever o valor de Quase sempre, é necessário escrever o valor de variáveisvariáveis e de e de expressõesexpressões

A função A função “printf” “printf” tem artifícios para issotem artifícios para isso

DigitarDigitar, salvar e executar o programa a seguir, salvar e executar o programa a seguir

Page 22: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

#include <stdio.h>#include <stdio.h>

#include <stdlib.h>#include <stdlib.h>

int main () {int main () {

int n; float preco;int n; float preco;

printf ("Numero de cadernos: ");printf ("Numero de cadernos: ");

scanf ("%d", &n);scanf ("%d", &n);

printf ("Preco do caderno: ");printf ("Preco do caderno: ");

scanf ("%f", &preco);scanf ("%f", &preco);

printf ("O preco de %d cadernos eh %g", n, n*preco);printf ("O preco de %d cadernos eh %g", n, n*preco);

printf ("\n\n");printf ("\n\n");

system ("pause");system ("pause");

return 0;return 0;

}}

float preco:

A variável ‘preco’ é do tipo real

Espera a digitação de um número real (%f)

Lê o número digitado, guardando-o no endereço da variável ‘preco’

%d escreve o valor de ‘n’ (inteiro) em decimal

%g escreve o valor de ‘n*preco’ (real) em decimal, com o número mínimo necessário de casas após o ponto

Page 23: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

Programa 1.5: Programa anterior com Programa 1.5: Programa anterior com repetiçõesrepetições

#include <stdio.h>#include <stdio.h>

#include <stdlib.h>#include <stdlib.h>

int main () {int main () {

int aluno, numalunos, numcadernos; float preco;int aluno, numalunos, numcadernos; float preco;

printf ("Digite o numero de alunos: ");printf ("Digite o numero de alunos: ");

scanf ("%d", &numalunos); printf ("\n"); aluno = 1;scanf ("%d", &numalunos); printf ("\n"); aluno = 1;

while (aluno <= numalunos) {while (aluno <= numalunos) {

printf ("Aluno %d: \n\n\tPreco do caderno: ", aluno);printf ("Aluno %d: \n\n\tPreco do caderno: ", aluno);

scanf ("%f", &preco);scanf ("%f", &preco);

printf ("\tNumero de cadernos: "); scanf ("%d", printf ("\tNumero de cadernos: "); scanf ("%d", &numcadernos);&numcadernos);

printf ("\tAluno %d: %d cadernos a R$%g cada; gasto total: printf ("\tAluno %d: %d cadernos a R$%g cada; gasto total: R$%g\n\n",R$%g\n\n",

aluno, numcadernos, preco, numcadernos*preco);aluno, numcadernos, preco, numcadernos*preco);

aluno = aluno + 1;aluno = aluno + 1;

}}

printf ("\n\n"); system ("pause"); return 0;printf ("\n\n"); system ("pause"); return 0;

}}

Digitar, salvar e executar este programa

Page 24: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

Digite o numero de alunos: Digite o numero de alunos: 33

Aluno 1:Aluno 1:

Numero de cadernos: Numero de cadernos: 55

Preco do caderno: Preco do caderno: 7.37.3

Numero de canetas: Numero de canetas: 66

Preco da caneta: Preco da caneta: 2.62.6

Numero de lapis: Numero de lapis: 88

Preco do lapis: Preco do lapis: 1.31.3

Numero de borrachas: Numero de borrachas: 55

Preco da borracha: Preco da borracha: 0.60.6

Aluno 1Aluno 1

5 cadernos a R$7.3 cada5 cadernos a R$7.3 cada

6 canetas a R$2.6 cada6 canetas a R$2.6 cada

8 lapis a R$1.3 cada8 lapis a R$1.3 cada

5 borrachas a R$0.6 cada5 borrachas a R$0.6 cada

Gasto total: R$65.5Gasto total: R$65.5

Em amarelo: digitados pelo operador

Exercício do Lab 1: Alterar o programa anterior para que ele produza no vídeo resultados como este:

Page 25: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

Aluno 2:Aluno 2:

Numero de cadernos: 7Numero de cadernos: 7

Preco do caderno: 6.2Preco do caderno: 6.2

Numero de canetas: 8Numero de canetas: 8

Preco da caneta: 3.1Preco da caneta: 3.1

Numero de lapis: 6Numero de lapis: 6

Preco do lapis: 1.3Preco do lapis: 1.3

Numero de borrachas: 4Numero de borrachas: 4

Preco da borracha: 0.8Preco da borracha: 0.8

Aluno 2Aluno 2

7 cadernos a R$6.2 cada7 cadernos a R$6.2 cada

8 canetas a R$3.1 cada8 canetas a R$3.1 cada

6 lapis a R$1.3 cada6 lapis a R$1.3 cada

4 borrachas a R$0.8 cada4 borrachas a R$0.8 cada

Gasto total: R$79.2Gasto total: R$79.2

Em amarelo: digitados pelo operador

Exercício do Lab 1: Alterar o programa anterior para que ele produza no vídeo resultados como este:

Page 26: CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo I Comandos Simples e Repetições

Aluno 3:Aluno 3:

Numero de cadernos: 9Numero de cadernos: 9

Preco do caderno: 8.3Preco do caderno: 8.3

Numero de canetas: 3Numero de canetas: 3

Preco da caneta: 2.7Preco da caneta: 2.7

Numero de lapis: 4Numero de lapis: 4

Preco do lapis: 1.7Preco do lapis: 1.7

Numero de borrachas: 8Numero de borrachas: 8

Preco da borracha: 0.2Preco da borracha: 0.2

Aluno 3Aluno 3

9 cadernos a R$8.3 cada9 cadernos a R$8.3 cada

3 canetas a R$2.7 cada3 canetas a R$2.7 cada

4 lapis a R$1.7 cada4 lapis a R$1.7 cada

8 borrachas a R$0.2 cada8 borrachas a R$0.2 cada

Gasto total: R$91.2Gasto total: R$91.2

Em amarelo: digitados pelo operador

Exercício do Lab 1: Alterar o programa anterior para que ele produza no vídeo resultados como este: