Anda di halaman 1dari 27

EXERCCIO DE ALGORITMOS E PROGRAMAO

1 Considerando que o usurio digitou,


7,0 8,0 5,5 9,5
O programa abaixo ir imprimir:
programa MEDIA
var
RESULTADO: caractere;
N1, N2, N3, N4: real;
SOMA, MEDIA: real;
inicio
leia (N1, N2, N3, N4);
SOMA = N1 + N2 + N3 + N4;
MEDIA = SOMA / 4;
se (MEDIA >= 7) ento
RESULTADO = Aprovado;
seno
RESULTADO = Reprovado;
fim se;
escreva (Nota 1 : , N1);
escreva (Nota 2 : , N2);
escreva (Nota 3 : , N3);
escreva (Nota 4 : , N4);
escreva (Media : , MEDIA);
escreva (Resultado : , RESULTADO);
fim.

RESPOSTA
N1 N2 N3 N4 Soma Media RESULTADO
7.0 8.0 5.5 9.5 30.0 7.5 Aprovado

1 PASSO:
Quando o sistema ler N1,N2,N3, e N4 devemos associar 7.0 ,8.0, 5.5 e 9.5.
2 PASSO:
SOMAR = N1+N2+N3+N4
SOMAR= 7.0 +8.0+5.5+9.5
SOMAR= 30.0
3 PASSO:
MEDIA = SOMA/4
MEDIA = 7.5
4 PASSO:
se MEDIA >=7 RESULTADO= APROVADO se no RESULTADO= REPROVADO
5 PASSO:
Nota 1 = 7.0 ;
Nota 2 = 8.0;
Nota 3 = 5.5 ;
Nota 4 = 9.5;
MEDIA = 7.5 ;
RESULTADO = Aprovado;
OBS:
Estrutura condicional simples
So usadas quando necessrio fazer uma opo entre 2 ou mais caminhos sendo que o
fluxo do algoritmo desviado segundo uma condio lgico relacional.
Esta estrutura subordina a execuo de um comando, ou bloco de comandos, a veracidade
ou no de uma condio lgico relacional.
Os comandos utilizados para implementar a estrutura de seleo so : SE, SE...SENO,
CASO

2 Indique com um X quais os dados abaixo so do tipo inteiro.
( X ) 1000
( ) 0
( )-900
( ) Verdadeiro
( X ) -456
( X ) 34
( ) Casa 8
( )Falso
( X ) -156
( ) -1.56
OBSERVAO
Tipos inteiros
So considerados inteiros aqueles valores numricos positivos ou negativos. Este tipo de
dados pode ser usado por meio dos identificadores:
int, pode possuir 16 bits, 32 bits ou 64 bits;
short int, deve possuir tamanho de no mnimo 16 bits e no pode ser maior que int;
long int, deve possuir tamanho mnimo de 32 bits;
long long int, deve possuir tamanho mnimo de 64 bits.

3 Indique com um X quais os dados abaixo so do tipo real.
(X ) 1000
( ) 0
( ) -900
( ) Verdadeiro
( X ) -456.5
( X ) 34
( ) Casa 8
( )Falso
(X ) -156
( X ) -1.56
OBSERVAO
Tipos reais
So considerados reais os valores numricos positivos e negativos sendo nmeros
fracionrios ou inteiros. Este tipo de dados pode ser usado por meio dos identificadores:
float define um nmero de ponto flutuante com seis dgitos decimais de preciso absoluta;
double representa nmeros de ponto flutuante com quinze dgitos decimais de preciso
absoluta; e
long double suporta um nmero de ponto flutuante com quinze dgitos decimais e preciso
absoluta.
4 Indique com um X quais os dados abaixo so do tipo lgico.
( ) 1000
( ) 0
( )-900
( X ) Verdadeiro
( ) -456
( ) 34
( ) Casa 8
( X )Falso
( ) -156
( ) -1.56
OBSERVAO=
Tipos lgicos
Os dados do tipo lgico podem assumir somente dois valores: VERDADEIRO e FALSO
5 Indique com um X quais os dados abaixo so do tipo caractere.
( ) 1000
( X ) 0
( X )-900
( ) Verdadeiro
( ) -456
( ) 34
( X ) Casa 8
( )Falso
( ) -156
( ) -1.56
OBSERVAO
Tipos caracteres
Caracteres ou sequncias de caracteres (strings) so formados por letras, nmeros e
smbolos especiais, representando dados alfanumricos.
Na linguagem C, por exemplo permite o uso de dados alfanumrico de duas formas:
um caractere delimitado por apstrofos: x
uma sequncia de caracteres delimitadas por aspas: x

6 Desenvolva os algoritmos em portugus estruturado:
a) Efetuar o clculo da quantidade de litros de combustveis gasto em uma viagem, utilizando-
se um automvel que faz 12 Km por litro. Para obter o clculo, o usurio dever fornecer o
tempo gasto e a velocidade mdia durante a viagem. Desta forma, ser possvel obter a
distncia percorrida com a frmula DISTANCIA = TEMPO * VELOCIDADE. Tendo o valor da
distncia, basta calcular a quantidade de litros de combustvel utilizada na viagem com a
frmula: LITROS_USADOS = DISTNCIA /12. O programa dever apresentar os valores da
velocidade mdia, tempo gasto na viagem, a distncia percorrida e a quantidade de litros
utilizada na viagem.
RESPOSTA
var
TEMPO: real;
VELOCIDADE: real;
DISTANCIA: real;
LITROS_USADOS: real;
inicio
escreva(Digite o tempo gasto na viagem);
leia(TEMPO);
escreva(Digite a velocidade media durante a viagem);
leia(VELOCIDADE);
DISTANCIA = TEMPO*VELOCIDADE;
LITROS_USADOS = DISTANCIA/12;
escreva(A velocidade media durante a viagem foi , VELOCIDADE);
escreva(O tempo gasto na viagem , DISTANCIA);
escreva(A quantidade de litros usados na viagem foi de , LITROS_USADOS);
fim
OBS: Faa o esquema chins e teste a resposta

b) Efetuar o clculo e a apresentao do valor de uma prestao em atraso, utilizando a
frmula: PRESTACAO = VALOR + (VALOR * (TAXA / 100) * TEMPO).
RESPOSTA
var
VALOR: real;
PRESTACAO: real;
TAXA: real;
TEMPO: inteiro;
inicio
escreva(Digite o valor da Prestao);
leia(VALOR);
escreva(Digite o numero de dias em atraso);
leia(TEMPO);
PRESTACAO = VALOR+(VALOR *(TAXA/100)*TEMPO);
escreva(O valor da prestao corrigido , PRESTACAO);
fim
c) Ler dois valores para as variveis A e B, e efetuar a troca dos valores de forma que a
varivel A passe a possuir o valor da varivel B e a varivel B passe a possuir o valor da
varivel A. Apresentar os valores trocados.
RESPOSTA
var
A, B, TROCA: inteiro;
inicio
escreva(Digite o valor de A);
leia(A);
escreva(Digite o valor de B);
leia(B);
TROCA = B;
A=B ;
B= TROCA
escreva(O valor trocado de B para A , A);
escreva(O valor trocado de A para B , B);
fim

d) Ler quatro nmeros e apresentar o resultado da adio e multiplicao, baseando-se na
utilizao da propriedade distributiva. Ou seja, se forem lidas as variveis A, B, C e D,
devero ser somadas e multiplicadas A com B, A com C e A com D. Depois B com C, B com D
e por fim C com D.
RESPOSTA
var
A,B,C,D: inteiro
RESULTADO_ADICAO: inteiro
RESULTADO_MULTIPLICACAO: inteiro
inicio
escreva(Digite o valor de A,B,C,D);
leia(A,B,C,D);
RESULTADO_ADICAO = (A+B) +(A+C)+ (A+D)+ (B+C)+ (B+D)+ (C+D);
RESULTADO_ MULTIPLICACAO = (A*B) +(A*C)+ (A*D)+ (B*C)+ (B*D)+ (C*D);
escreva(O resultado da adio baseado na propriedade distributiva
RESULTADO_ADICAO);
escreva(O resultado da multiplicao baseado na propriedade distributiva RESULTADO_
MULTIPLICACAO);

fim



e) Elaborar um programa que calcule e apresente o volume de uma caixa retangular, por meio
da frmula: VOLUME = COMPRIMENTO * LARGURA * ALTURA.
RESPOSTA
var
VOLUME, COMPRIMENTO, LARGURA, ALTURA : real;
inicio
escreva(Digite o comprimento da caixa retangular);
leia(COMPRIMENTO);
escreva(Digite a largura da caixa retangular);
leia(LARGURA);
escreva(Digite a altura da caixa retangular);
leia(ALTURA);
VOLUME = COMPRIMENTO * LARGURA * ALTURA;
escreva(O volume da caixa retangular , VOLUME);
fim

f) Efetuar a leitura de um nmero inteiro e apresentar o resultado do quadrado desse
nmero.
RESPOSTA
var
NUM : inteiro;
inicio
escreva(Digite um numero);
leia(NUM);
escreva(O quadrado de NUM , NUM* NUM);
fim
g) Ler dois inteiros (variveis A e B) e imprimir o resultado do quadrado da diferena do
primeiro valor pelo segundo.
RESPOSTA
var
A,B, QD : inteiro;
inicio
escreva(Digite o valor de A);
leia(A);
escreva(Digite o valor de B);
leia(B);
QD =(A*A)-(2*(A*B))+(B*B);
escreva(O quadrado e a diferena de A e B , QD);
fim


h) Elaborar um programa que efetue a apresentao do valor da converso em real (R$) de
um valor lido em dlar (US$). O programa dever solicitar o valor da cotao do dlar e
tambm a quantidade de dlares disponvel com o usurio.
RESPOSTA
var
VALOR_DOLAR, VALOR_REAL, COTACAO_DOLAR : real;
inicio
escreva(Digite o valor da cotao do dlar );
leia(COTACAO_DOLAR);
escreva(Digite sua quantidade em dolar);
leia(VALOR_DOLAR);
VALOR_REAL = VALOR_DOLAR * COTACAO_DOLAR;
escreva(Seu valor em dlar convertido para real , VALOR_REAL);
fim.
i) Elaborar um programa que efetue a leitura de trs valores (A, B e C) e apresente como
resultado final a soma dos quadrado da soma dos trs valores lidos.
RESPOSTA
var
A,B,C,SQ: inteiro;
inicio
escreva(Digite o valor de A,B e C );
leia(A,B,C);
SQ = (A*A)+ (B*B)+ (C*C);
escreva(A soma dos quadrados de A,B e C , SQ);
fim
7 Se o usurio entrar com os seguintes valores
5 19 11

O que ser impresso no final:
var
X : inteiro;
A : inteiro;
B : inteiro;
inicio
leia (A);
leia (B);
X = A + B;
se (X > 10) ento
escreva X;
fim se;
fim.

X A B
5 19

24

8 Se o usurio entrar com os seguintes valores
7 9

O que ser impresso no final:
var
X : inteiro;
R : inteiro;
A : inteiro;
B : inteiro;
inicio
leia (A);
leia (B);
X = A + B;
se (X >= 10) ento
R = X + 5;
se no
R = X - 7;
fim se;
escreva R;
fim.
RESULTADO
X R A B
16 21 7 9

21


9 Se o usurio entrar com os seguintes valores

560,75

O que ser impresso no final:
var
NOVO_SALARIO : real;
SALARIO : real;
inicio
leia (SALARIO);
se (SALARIO < 500) ento
NOVO_SALARIO = SALARIO * 1.15;
se no
se (SALARIO <= 1000) ento
NOVO_SALARIO = SALARIO * 1.10;
se no
NOVO_SALARIO = SALARIO * 1.05;
fim se;
fim se;
escreva NOVO_SALARIO;
fim.

RESULTADO
SALARIO = 560,75
NOVO_ SALRIO = 560,75*1,10 = 616,86

10 Indique a sada dos trechos de programa em portugus estruturado, mostrado abaixo. Para as
sadas considere os seguintes valores: A = 2, B = 3, C = 5 e D = 9. No necessrio calcular os
valores de X. Marque na resposta apenas a frmula que ser executada de acordo com a
condio.
a) Resposta _____________________________

se .nao. (D > 5) ento
X = (A + B) * D;
se no
X = (A - B) / C;
fim se;
escreva X;

se nao (D>5) ento
se nao (9>5) entao
se nao (V) entao
se F entao
45

b) Resposta _____________________________
se (A > 2) .e. (B < 7) ento
X = (A + 2) * (B - 2);
se no
X = (A + B) / D * (C + D);
fim se;
escreva X;

se F e V ento
=(A+B)/D*(C+D)
=5/9*14
=5/126
=0,39





c) Resposta _____________________________
se (A = 2) .ou. (B < 7) ento
X = (A + 2) * (B - 2);
se no
X = (A + B) / D * (C + D);
fim se;
escreva X;

se F e V entao
=(A+2)*(B-2)
=4*1
=4

d) Resposta _____________________________
se (A > 2) .ou. .nao. (B < 7) ento
X = (A + 2) - 2;
se no
X = A - B;
fim se;
escreva X;

se F ou nao V entao
F ou F
=A-B
= -1

e) Resposta _____________________________
se .nao. (A > 2) .ou. .nao. (B < 7) ento
X = A + B;
se no
X = A / B;
fim se;
escreva X;

se nao F ou nao V entao
V ou F
=A+B
= 5

f) Resposta _____________________________
se .nao. (A > 3) .e. .nao. (B < 5) ento
X = A + D;
se no
X = D / B;
fim se;
escreva X;
se nao F ou nao V entao
V e F
=D+B
= 3

g) Resposta _____________________________
se (C >= 2) .e. (B <= 7) ento
X = (A + D) / 2;
se no
X = D * C;
fim se;
escreva X;

se V e V entao
= (A+D)/2
=11/2
= 5,5

h) Resposta _____________________________
se .nao. (A >= 2) .ou. (C <= 1) ento
X = (A + D) / 2;
se no
X = D * C;
fim se;
escreva X;

se V ou F entao
= (A+D)/2
=11/2
= 5,5

11 Desenvolva os algoritmos em portugus estruturado:
a) Ler dois nmeros e apresentar a diferena do maior pelo menor.
RESPOSTA
var
A,B: inteiro;
inicio
escreva(Digite 2 numeros A e B);
leia(A,B);
se (A>B)entao
escreva(A diferena de S por B , A-B);
se no
escreva(A diferena de B por A , B-A);
fim se
fim
b) Efetuar a leitura de um valor inteiro positivo ou negativo e apresentar o nmero lido
como sendo um valor positivo, ou seja, o programa dever apresentar o mdulo de um
nmero fornecido. Lembre-se de verificar se o nmero fornecido menor que zero;
sendo,multiplique-o por -1.
RESPOSTA
var
N: inteiro;
inicio
escreva(Digite o nmeros: );
leia(N);
se (N < 0)entao
N = N * (-1);
fim se
escreva(O modulo do numero , N);
fim

c) Ler quatro valores referentes a quadro notas escolares de um aluno e imprimir uma
mensagem dizendo que o aluno foi aprovado, se o valor da mdia escolar for maior ou
igual a 5. Se o aluno no foi aprovado, indicar uma mensagem informando esta
condio. Apresentar junto das mensagens o valor da mdia do aluno para qualquer
condio.

RESPOSTA
var
N1, N2, N3, N4, MEDIA: real;
inicio
Escreva(Digite os valores de N1,N2, N3 e N4);
leia(N1,N2, N3 , N4);
MEDIA = (N1+N2+ N3+N4)/4;
se (MEDIA >= 7) entao
Escreva(Aluno aprovado com mdia: MEDIA);
se no
Escreva(Aluno reprovado com mdia: MEDIA);
fim se;
fim




d) Efetuar a leitura de trs valores (variveis A, B e C) e apresent-los dispostos em ordem
crescente. Para solucionar o problema, utilizar os conceitos de propriedades
distribuitivas e troca de valores entre variveis.
RESPOSTA
var
A,B,C; inteiro;
M1,M2,M3: inteiro
inicio
Escreva(Digite os valores de A,B e C);
leia(A,B,C);
se (A>B) e(A>C) entao
M1= A;
se (B>C) entao
M2 = B;
M3 = C;
se nao
M2 = C;
M3 = B;
fim se;
se nao
se (B>C)entao
M1 =B;
se (A>C)ento
M2= A; M3=C;
se no
M2 = C;
M3 = A;
fim se
fim se
else
se (A>B)ento
M2= A;
M3=B;
se no
M2 = B;
M3 = A;
fim se

fim se
fim

e) Efetuar a leitura de cinco nmeros inteiros e identificar o maior e o menor dos valores.
No execute a ordenao dos valores.
RESPOSTA
var
N1, N2, N3, N4, N5: inteiro;
MAIOR, MENOR: inteiro;
inicio
Escreva(Digite 5 numeros);
leia(N1,N2, N3 , N4, N5);
MAIOR = 0;
MENOR = 0;
se (N1 > MAIOR) entao
MAIOR = N1;
fim se;
se (N2 > MAIOR) entao
MAIOR = N2;
fim se;
se (N3 > MAIOR) entao
MAIOR = N3;
fim se;
se (N4 > MAIOR) entao
MAIOR = N4;
fim se;
se (N5 > MAIOR) entao
MAIOR = N5;
fim se;
MENOR = MAIOR
se (N1 < MENOR) entao
MENOR = N1;
fim se;
se (N2 < MENOR) entao
MENOR = N2;
fim se;
se (N3 > MENOR) entao
MENOR = N3;
fim se;
se (N4 < MENOR) entao
MENOR = N4;
fim se;
se (N5 < MENOR) entao
MENOR = N5;
fim se;
escreva(O maior nmero: MAIOR);
escreva(O menor nmero: MENOR);
fim.


12 Informe os valores das variveis pedidas nos problemas e informe o resultado dos algoritmos
abaixo.
a) programa LOOPING_1A
var
X, R : inteiro;
CONT: inteiro;
inicio
CONT = 1;
enquanto (CONT <= 5) faa
leia (X);
R = X * 3;
escreva (R);
CONT = CONT + 1;
fim enquanto;
fim.

RESPOSTA
X R CONT
2 6 1
9 27 2
5 15 3
3 9 4
4 12 5
6














6
27
15
9
12
b) programa LOOPING_2A
var
X, R : inteiro;
CONT: inteiro;
inicio
CONT = 1;
repita
leia (X);
R = X * 3;
escreva (R);
CONT = CONT + 1;
ate que (CONT > 5)
fim.



RESPOSTA
X R CONT
11 33 1
7 21 2
4 12 3
10 30 4
5


c) programa LOOPING_3A
var
X, R : inteiro;
CONT: inteiro;
inicio
para CONT de 1 at 5 passo 1 faa
leia (X);
R = X * 3;
escreva (R);
fim para;
fim.

RESPOSTA
X R CONT
1 3 1
2 6 2
3 9 3
4 12 4
5 15 5
6




33
21
12
30
3
6
9
12
15
d) programa FATORIAL_A
var
CONTADOR : inteiro;
FATORIAL: inteiro;
inicio
FATORIAL = 1;
CONTADOR = 1;
enquanto (CONTADOR <= 5) faa
FATORIAL = FATORIAL * CONTADOR;
CONTADOR = CONTADOR + 1;
fim enquanto;
escreva (Fatorial de 5 = , FATORIAL);
fim.


RESPOSTA
CONTADOR FATORIAL
1 1
2 1
3 2
4 6
5 24
6 120

e) programa FATORIAL_B
var
CONTADOR : inteiro;
FATORIAL: inteiro;
inicio
FATORIAL = 1;
CONTADOR = 1;
repita
FATORIAL = FATORIAL * CONTADOR;
CONTADOR = CONTADOR + 1;
ate que (CONTADOR > 5)
escreva (Fatorial de 5 = , FATORIAL);
fim.

RESPOSTA
CONTADOR FATORIAL
1 1
2 1
3 2
4 6
5 24
6 120



O Fatorial de 5 = 120
O Fatorial de 5 = 120
f) programa FATORIAL_C
var
CONTADOR : inteiro;
FATORIAL: inteiro;
inicio
FATORIAL = 1;
para CONTADOR de 1 ate 5 passo 1 faa
FATORIAL = FATORIAL * CONTADOR;
fim para
escreva (Fatorial de 5 = , FATORIAL);
fim.


RESPOSTA
CONTADOR FATORIAL
1 1
2 1
3 2
4 6
5 24
6 120

13 Desenvolva os algoritmos em portugus estruturado:
a) Apresentar os resultados de uma tabuada de um nmero qualquer, a qual dever ser
impressa no seguinte formato:
Considerando como exemplo o fornecimento do nmero 2
2x1 = 2
2x2 = 4
2x3 = 6
2x4 = 8
2x5 = 10
(...)
2x10 = 20
RESPOSTA
var
N: inteiro;
CONT: inteiro;
Inicio
leia(N);
CONT=1;
enquanto (CONT <=10) faa
escreva(N, x , CONT, =, NxCONT);
CONT = CONT +1;
fim-enquanto
fim
O Fatorial de 5 = 120
b) Apresentar o total da soma dos cem primeiros nmeros inteiros
(1+2+3+4+5+6+7+...97+98+99+100).
RESPOSTA
var
N, CONT, SOMA: inteiro;
inicio
SOMA = 0;
para CONT de 1 ate 100 passo 1 faa
SOMA = SOMA + CONT;
fim para;
escreva(A soma dos , N, nmeros , SOMA);
Fim;

c) Escreva um programa que apresente uma srie de Fibonacci at o dcimo quinto termo. A
srie de Fibonacci 1,1,2,3,5,8,13,21,34,... etc. Esta srie se caracteriza pe soma de um
termo posterior com o seu anterior subsequente.

RESPOSTA

var
F, CONT, ANT, ATUAL: inteiro;
inicio
F=1; ANT=1;
CONT=1;
escreva (F);
escreva (F);
enquanto (CONT < 14) ento
ATUAL = F;
F=F+ANT;
ANT=ATUAL;
CONT=CONT+1;
escreva(F);
fim-enquanto;
fim;



ATUAL F ANT CONT
1 1 1 1
2 2 1 2
3 3 2 3
5 5 3 4
8 8 5 5
13 21 13 7
21 34 21 8
34 55 34 9
55 89 34 10
89 123 89 11
123 212 123 12
212 335 212 13
335 547 335 14

1 1 2 3 5 8 13 21 34 55 89 123 212 335 547
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

d) Elaborar um programa que efetue a leitura de 10 valores numricos e apresente no final o
total do somatrio e a mdia dos valores lidos.
RESPOSTA
var
N,S,M,CONT: inteiro;
inicio
S=0;
para CONT de 1 ate 10 passo de 1 faa;
escreva(Digite o , CONT ,numero);
leia(N)
S=S+N;
fim para
M = S/10;
escreva (A soma dos 10 nmeros , S);
escreva (A mdia dos 10 nmeros , M);
fim

e) Elaborar um que efetue a leitura sucessiva de valores numricos e apresente no final o total
do somatrio, a mdia e o total de valores lidos. O programa dever fazer a leitura dos
valores enquanto o usurio estiver fornecendo valores positivos. Ou seja, o programa
dever parar quando o usurio fornecer um valor negativo (menor que zero).
RESPOSTA
var
N,S,M,VL: inteiro;
inicio
N = 0; VL=0;
S = 0;
enquanto (N < 0) faa;
leia(N);
se(N>0)entao
S=S+N;
VL = VL+1;
fim se
fim enquanto
M = S/VL;
escreva (Os valores lidos , VL);
escreva (A soma dos valores , S);
escreva (A mdia dos valores , M);
fim
f) Elaborar um programa que efetue a leitura de valores positivos inteiros at que um valor
negativo seja informado. Ao final devero ser apresentado o maior e o menor valor
informado pelo usurio.
RESPOSTA
var
N,MAIOR, MENOR: inteiro;
inicio
leia(N);
se(N>0)entao
MAIOR = N;
MENOR = N;
enquanto (N > 0) faa;
se(N>MAIOR)entao
MAIOR = N;
fim se;
se(N< MENOR)entao
MENOR = N;
fim se;
leia(N);
fim enquanto
escreva(O maior numero , MAIOR);
escreva(O menor numero , MENOR);
fim.
14 Qual ser a impresso obtida para cada uma destas instrues? Assuma que fazem parte de
um programa completo

a) printf(Bom dia ! Shirley.);
printf(Voc j tomou caf ?\n.);
Bom dia ! Shirley. Voc j tomou caf ?

b) printf(A soluo no existe !\nNo insista.);
A soluo no existe !
No insista.

c) printf(Duas linhas de saida\nou s Uma?);
Duas linhas de sada
ou s Uma?


15 Quais das seguintes instrues esto corretas ?
a) (X) Int a;
b) (X) Float b;
c) Double float c;
d) Unsigned char d;
e) Long float e;

16 O que ser impresso no fim das operaes.
REVISANDO:

n=5
x= n++
x=5 n=6
_________________________

n=5
x= ++n
x=6 n=6
_________________________

k=3*n++
1 n multiplicado por 3
2 o resultado atribudo a k
3 n incrementado 1
_________________________

k=3*++n
1 n incrementado 1
2 n multiplicado por 3
3 o resultado atribudo a k
a) main(){
int i=3;
int n;
n=i*((i+1)+(++i));
printf(\n n = %d, n);
}

i n
3 =i*( (i+1)+(++i)
=i*( 4+4)
=3*8
n = 15


b) main(){
int i=3;
int n;
n=i*(i+1)+(i++);
printf(\n n = %d, n);
}
i n
3 =i*( (i+1)+(i++)
=3*4+(i++)
=12*3

n = 15

c) main(){
int i=3;
int n;
printf(\n n = %d, n=i*(i+1)+(++i));
}

i n
3 =i*( (i+1)+(++i)
=3*4+4
=12+4

n = 16

d) main(){
int i=3;
int n;
printf(\n n = %d, n=i*(i+1)+(i++));
}
i n
3 =i*( (i+1)+(i++)
=3*4+3
=12+4

n = 16
e) main(){
int i=3;
printf(\n n = %d %d %d ,i=i+1, i=i+1, i=i+1);
}
i
3

6 5 4

17 Qual ser sada do seguinte cdigo?
a) main(){
int total=0;
int cont=10;
printf(Total =%d\n ,total);
total+=cont;
printf(Total =%d\n ,total);
total+=cont;
printf(Total =%d\n ,total);
}
TOTAL CONT
0 10
10
20

18 Quais das seguintes opes so considerados operadores aritmticos bsicos?
a (x) +
b &
c %
d <

19 Dados os seguintes cdigos, escreva qual ser sada dos comandos.

a) main(){
int conta;
for(conta = 9; conta>=0; conta--)
printf(Conta=%d\n,conta);
}
CONTA
9
8
7
6
5










TOTAL = 0 TOTAL = 10 TOTAL = 20

CONTA= 9
CONTA= 8
CONTA= 7
CONTA= 6
CONTA= 5
CONTA= 4
CONTA= 3
CONTA= 2
CONTA= 1
CONTA= 0

b) main(){
int conta;
for(conta = 0; conta<10; conta+=3)
printf(Conta=%d\n,conta);
}

CONTA
9
8
7
6
5

20 As sadas dos programas sero?
a) main(){
int conta, total;
for(conta = 0; total = 0; conta<10; conta++){
total += conta;
printf(Conta=%d, Total=%d ,conta, total);
}
}
CONTA TOTAL
0 0
1 1
2 3
3 6
4 10
5 15
6 21
7 28
8 36
9 45
10 55
11



b) main(){
int conta=0;
int total=0;
while(conta<10){
total += conta;
printf(Conta=%d, Total=%d\n ,conta++, total);
}
}

CONTA= 1
CONTA= 3
CONTA= 6
CONTA= 9

CONTA= 0 , TOTAL= 0
CONTA= 1 , TOTAL=1
CONTA= 2 , TOTAL=3
CONTA= 3 , TOTAL=6
CONTA= 4, TOTAL=10
CONTA= 5 , TOTAL=15
CONTA= 6 , TOTAL=21
CONTA= 7 , TOTAL=28
CONTA= 8 , TOTAL=26
CONTA= 9 , TOTAL=45
CONTA= 10, TOTAL=55

CONTA TOTAL
0 0
1 0
2 1
3 3
4 6
5 10
6 15
7 21
8 28
9 36
10 45
11 55


c) main(){
int num;
long resposta;
while(1){
printf(\n Digite o numero: );
scanf(%d,&num);
resposta = 1;
while(num > 1)
resposta *= num --;
printf(O fatorial : %1d\n, resposta);
break;
}
}

NUM RESPOSTA
3 1
2 3
1 6


CONTA= 0 , TOTAL= 0
CONTA= 1 , TOTAL=1
CONTA= 2 , TOTAL=3
CONTA= 3 , TOTAL=6
CONTA= 4, TOTAL=10
CONTA= 5 , TOTAL=15
CONTA= 6 , TOTAL=21
CONTA= 7 , TOTAL=28
CONTA= 8 , TOTAL=36
CONTA= 9 , TOTAL=45
CONTA= 10, TOTAL=55

O FATORIAL 6

Anda mungkin juga menyukai