[e-Book] Lógica da Programação - INFORMÁTICA

Page 1


LÓGICA DA PROGRAMAÇÃO INFORMÁTICA

ATIVIDADES

COMPLEMENTARES


INFORMÁTICA

ATIVIDADES COMPLEMENTARES

Módulo | 1 Capítulo | Lógica da Programação Autores | Lucy Mari Tabuti e Rodrigo Assirati Dias MiniCV

|

Lucy Mari Tabuti Mestre em ciência da computação pela IME-USP. Especialista em educação matemática pela Faculdades São Luis. Graduada em matemática pela USP. Técnica em administração de empresas pela Fundação Bradesco. Atuou como analista na área técnica, chefe de serviço na área administrativa e de recursos humanos. Atualmente é professora e orientadora no colégio Rainha da Paz.


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _______________________________________________________________________

SUMÁRIO 1

ATIVIDADES COMPLEMENTARES ...................................................................................... 1 1.1 ATIVIDADES COMPLEMENTARES | AULA 01 .................................................................... 1 1.2 ATIVIDADES COMPLEMENTARES | AULA 02 .................................................................... 3 1.3 ATIVIDADES COMPLEMENTARES | AULA 03 .................................................................... 6 1.4 ATIVIDADES COMPLEMENTARES | AULA 04 .................................................................... 9 1.5 ATIVIDADES COMPLEMENTARES | AULA 05 .................................................................. 12

2

APÊNDICE ....................................................................................................................... 18 2.1 GABARITO DA ATIVIDADES COMPLEMENTARES | AULA 01 ........................................... 18 2.2 GABARITO DAS ATIVIDADES COMPLEMENTARES | AULA 02.......................................... 42 2.3 GABARITO DAS ATIVIDADE COMPLEMENTARES | AULA 03 ........................................... 63 2.4 GABARITO DAS ATIVIDADES COMPLEMENTARES | AULA 04.......................................... 81 2.5 GABARITO DAS ATIVIDADES COMPLEMENTARES | AULA 05........................................ 100


LÓGICA DA PROGRAMAÇÃO

1

ATIVIDADES COMPLEMENTARES

1.1 ATIVIDADES COMPLEMENTARES | AULA 01 Realize estas atividades complementares e teste seu conhecimento: 01) Clarisbela recebeu x moedas de sua tia e y moedas de seu primo. Desenvolva um algoritmo que mostra quantas moedas Clarisbela tem no total. 02)

Fiorisbela ganhou um saquinho com n balas e resolveu dividir igualmente com seus três irmãos. Desenvolva um algoritmo que mostre quantas balas recebeu cada um dos seus irmãos e quantas balas sobraram, já que não foi possível dividir de forma justa.

03) Clodorico Nunesberg deseja construir um programa que imprima seu nome. Desenvolva um algoritmo que receba o nome e o sobrenome de Clodorico Nunesberg e mostra seu nome impresso na tela do computador. 04) Mendesnerte possui uma certa quantidade de bolinhas de gude. Ele as separa de dois em dois para saber se possui um número par ou ímpar de bolinhas de gude. Desenvolva um algoritmo em que Mendesnerte possa entrar com a quantidade de bolinhas de gude e mostra para ele se essa quantidade é par ou ímpar. 05) O professor Jonesclark precisa verificar quais de seus alunos estão de recuperação. Ajude o professor nessa tarefa desenvolvendo um algoritmo que receba uma nota e verifique se, com essa nota, o aluno

Página 1


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _______________________________________________________________________

foi aprovado (nota >= 5), reprovado (nota < 3) ou em recuperação (nota < 5 e nota >= 3). 06)

Cosmolinda está estudando os meses do ano. Ela precisa classificar os meses do ano em primeiro e segundo semestres. Desenvolva um algoritmo que ajude Cosmolinda a estudar em qual semestre está determinado mês.

07)

Emengildo, amigo de Cosmolinda, também está estudando os meses do ano. Ele precisa classificar os meses do ano em primeiro, segundo, terceiro e quarto trimestres. Desenvolva um algoritmo que ajude Emengildo a estudar em qual trimestre está determinado mês.

08) Clesmenildo quer desenvolver uma agenda que o ajude a lembrar de suas

tarefas

semanais.

Desenvolva

um

algoritmo

que

ajude

Clesmenildo a saber as tarefas do dia, quando digitar um dia da semana. 09)

Gilbertino está estudando somatória. Ele já calculou a somatória de algumas sequências numéricas, porém está com dificuldade de concluir a somatório de dez números. Ajude Gilbertino a resolver seu problema, desenvolvendo um algoritmo que receba dez números e mostre a soma desses números.

10)

Agora Gilbertino está estudando somatório de números pares. Ele já calculou a somatória de algumas sequências de números pares, porém está com dificuldade de concluir a somatória de números pares numa sequência de quinze números. Ajude Gilbertino a resolver seu problema, desenvolvendo um algoritmo que receba quinze números e mostre

a

soma

dos

números

pares.

Página 2


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES

1.2 ATIVIDADES COMPLEMENTARES | AULA 02 Realize estas atividades complementares e teste seu conhecimento: 11) O fatorial de um número natural n é o produto dos números de 1 até n. Desenvolva um algoritmo que receba um número e calcule o fatorial desse número. 12)

Marisnelda precisa estudar tabuada, porém ela acha que estudar tabuada é uma tarefa basicamente decorativa e desestimulante. Assim, ela prefere estudar com o auxílio do computador. Ajude Marisnelda a estudar tabuada, a partir de um algoritmo que receba um número e mostre o resultado da tabuada desse número.

13)

Hidekovisk possui um conjunto de vinte moedas com diferentes números naturais. Ele precisa descobrir qual é a moeda que possui o maior número natural. Desenvolva um algoritmo em que Hidekovisk possa digitar os vinte números e o algoritmo mostre o maior desses números.

14)

Ao estudar produtos notáveis, Merislindra pediu para um amigo(a) ajudá-la a desenvolver um algoritmo em que ela possa digitar dois números e o algoritmo lhe mostre a soma do quadrado desses números. Sabendo que você é o(a) amigo(a) de Merislindra, ajude-a a desenvolver esse algoritmo.

15)

Ao estudar produtos notáveis, Zildofredo pediu para um(a) amigo(a) ajudá-lo a desenvolver um algoritmo em que ele possa digitar dois números e o algoritmo lhe mostre a soma do cubo desses números. Sabendo

que

você

é

o(a)

amigo(a)

de

Zildofredo,

ajude-o

a

Página 3


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES

desenvolver

esse

algoritmo.

Página 4


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES ______________________________________________________________________

16) Akirovisk está estudando raiz quadrada de um número e gostaria de verificar se os cálculos, que tem realizado, condizem com o resultado correto. Desenvolva um algoritmo em que Akirovisk possa digitar um número e o algoritmo lhe mostre a raiz quadrada desse número. 17) O professor Jonesclark precisa calcular a média aritmética das notas de duas provas de cada um dos seus alunos. Ajude o professor nessa tarefa, desenvolvendo um algoritmo que receba duas notas e mostre a média aritmética dessas notas. 18) Mendesnerte possui uma certa quantidade de bolinhas de gude. Ele as separa de três em três para saber se possui um número divisível por 3. Desenvolva um algoritmo em que Mendesnerte possa entrar com a quantidade de bolinhas de gude e lhe mostre se essa quantidade é divisível por 3. 19)

Piteiscook possui um terreno no formato de um quadrado e quer descobrir a área desse terreno. Ajude Piteiscook nessa empreitada, sabendo que ele consegue medir, pelo menos, um dos lados desse terreno.

20) Reinilton está construindo uma quadra poliesportiva e está, neste momento, desenhando o círculo central da quadra. Como curiosidade, Reinilton gostaria de saber a medida da circunferência que contorna o círculo. Desenvolva um algoritmo que receba o raio da circunferência desse círculo da quadra e que lhe mostre a medida do seu comprimento.

Página 5


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES

1.3 ATIVIDADES COMPLEMENTARES | AULA 03 Realize estas atividades complementares e teste seu conhecimento: 21) Reinilton está construindo uma quadra poliesportiva e está, neste momento, desenhando o círculo central da quadra. Como curiosidade, Reinilton,

gostaria

de

saber

a

área

do

círculo

dessa

quadra.

Desenvolva um algoritmo que receba o raio do círculo da quadra de Reinilton e lhe mostra a medida de sua área. 22) Gilbertino ainda está estudando somatória. Ele já calculou a somatória de algumas sequências numéricas, porém apresenta dificuldade de concluir a somatório de trinta números. Ajude Gilbertino a resolver seu problema, desenvolvendo um algoritmo que receba trinta números e mostre a soma desses números. 23) Piteiscook possui alguns terrenos no formato de um quadrado e quer descobrir a área de cada um desses terrenos. Ajude Piteiscook a descobrir essas áreas, sabendo que as medidas dos lados desses terrenos vão de 10 a 20 metros. 24) Um grupo de jovens foi fazer uma visita a uma emissora de televisão que deseja presentear a pessoa mais jovem desse grupo. Desenvolva um algoritmo que receba a idade dos vinte jovens e mostre a idade do jovem mais novo. 25) Um grupo de jovens foi fazer uma visita a uma emissora de rádio que deseja saber a média de idades desse grupo. Desenvolva um algoritmo

Página 6


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES ______________________________________________________________________

que receba as idades desses dez jovens, calcule e mostre, para a emissora, a média da idade dos jovens. 26) Clarisbela recebeu x moedas de sua tia e y moedas de seu primo. Desenvolva uma função que retorne quantas moedas Clarisbela tem no total. 27) Flauberiana está estudando o cálculo de multiplicação. Ela já resolve facilmente o produto de dois números, porém apresenta bastante dificuldade em entender e verificar seus cálculos no produto de três números reais. Ajude Flauberiana a verificar se seus cálculos estão corretos, escrevendo uma função que receba três números reais e retorne o produto desses números. 28) Flauberiana está estudando os números positivos e negativos. Porém está com bastante dificuldade em entender e verificar quais dos números são positivos e quais não são. Ajude Flauberiana a verificar se determinado número é positivo, escrevendo uma função que receba um número e retorne verdadeiro, se ele for positivo, e falso, caso contrário. 29) Clarisbela recebeu x moedas de sua tia e y moedas de seu primo. Desenvolva um procedimento que mostre quantas moedas Clarisbela tem no total. 30) Flauberiana está estudando o cálculo de multiplicação. Ela já resolve facilmente o produto de dois números, porém está com bastante dificuldade em entender e verificar seus cálculos no produto de três números reais. Ajude Flauberiana a verificar se seus cálculos estão

Página 7


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES ______________________________________________________________________

corretos, escrevendo um procedimento que receba três números reais e mostra o produto desses números.

Página 8


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES

1.4 ATIVIDADES COMPLEMENTARES | AULA 04 Realize estas atividades complementares e teste seu conhecimento: 31) Mendesnerte possui uma certa quantidade de bolinhas de gude. Ele as separa de duas em duas para saber se possui um número par ou ímpar. Desenvolva um procedimento que receba a quantidade dessas bolinhas de gude e mostre, para Mendesnerte, se essa quantidade é par ou ímpar. 32) Taltinho quer guardar os dez números que mais lhe dão sorte para futuramente utilizá-los a seu favor. Porém, como ele é bastante esquecido, quer um algoritmo que possa guardar essa informação e mostrá-la sempre que quiser. Desenvolva um algoritmo em que Taltinho possa digitar os seus números da sorte num vetor e mostre esses números. 33) Um grupo da terceira idade foi fazer uma visita a uma emissora de televisão. Porém a emissora deseja presentear a pessoa mais velha desse grupo. Desenvolva uma função que receba um vetor com a idade dessas pessoas e que retorne a idade da pessoa mais velha. 34) Gilbertino continua estudando somatória. Ele já calculou a somatória de algumas sequências numéricas, porém está com dificuldade de concluir a somatório de outros números. Ajude Gilbertino a resolver seu problema, desenvolvendo um procedimento que receba um vetor números

e

mostre

a

soma

desses

números.

Página 9


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _______________________________________________________________________

35) Mendesnerte possui uma certa grande quantidade de bolinhas de gude que está separada em pequenos saquinhos. Ele pega cada saquinho e separa as bolinhas de gude de duas em duas para saber se possui um número

par

ou

ímpar.

Desenvolva

um

procedimento

em

que

Mendesnerte possa entrar com um vetor em que cada posição tenha a quantidade de bolinhas de cada saquinho e mostre os números pares desse vetor. 36) Gilbertino está estudando somatório de números positivos. Já calculou a somatória de algumas sequências de números positivos, porém está com dificuldade de concluir a somatória de números positivos, numa sequência grande de números. Ajude Gilbertino a resolver seu problema, desenvolvendo uma função que receba um vetor números e retorne a soma dos números positivos. 37) Hidekovisk possui um conjunto de moedas com diferentes números

[U1] Comentário: Igual à questão 13?

naturais. Ele precisa descobrir qual é a moeda que possui o maior número natural. Desenvolva uma função que receba uma matriz com os valores das moedas e a função retorne o valor da maior moeda. 38) Gilbertino está estudando somatória. Ele já calculou a somatória de algumas sequências numéricas, porém, está com dificuldade de concluir a somatório de 50 números. Ajude Gilbertino a resolver seu problema, desenvolvendo um algoritmo que receba 50 números e mostre a soma desses números. 39) Flauberiana está estudando o cálculo de multiplicação. Ela já resolve facilmente o produto de uma sequência de números, porém encontra bastante dificuldade em entender e em verificar seus cálculos no produto

de

vinte

números

inteiros. Página 10

[U2] Comentário: A função retorne o valor da maior moeda. Está correto?


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _______________________________________________________________________

Ajude

Flauberiana

a

verificar

se

seus

cálculos

estão

corretos,

escrevendo uma função que receba os números de 1 a 20 e mostra o produto desses números. 40) Desenvolva um algoritmo que receba uma opção inteira e saia da repetição

somente

quando

o

usuário

digitar

0.

Página 11


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES

1.5 ATIVIDADES COMPLEMENTARES | AULA 05 Realize estas atividades complementares e teste seu conhecimento: 41) A série harmônica é uma série infinita, representada pelos números 1, 1/2, 1/3, 1/4, 1/5, ... . Ela é chamada série harmônica por causa da semelhança que possui com a proporcionalidade da música, ou seja, com os comprimentos das ondas de uma corda que vibra a 1, 1/2, 2/4, 1/5, ... . Desenvolva um algoritmo que mostre o resultado da somatória da série harmônica até um número n natural positivo, digitado pelo usuário: 1 + 1/2 + 1/3 + ... + 1/N. 42) A potenciação, também conhecida como exponenciação, é a operação de elevar determinado número a a outro número b, cujo resultado também pode ser obtido pelo produto do número a, b vezes. Desenvolva um algoritmo que receba dois números a e b e mostre o resultado de a elevado a b sem ser utilizado o operador da potência. 43) Um grupo de jovens foi fazer uma visita a uma emissora de televisão. Porém a emissora quer saber a média de idades desse grupo. Desenvolva uma função que receba as idades desses jovens num vetor, calcula e retorna a média da idade desses jovens. 44) Um grupo de jovens foi fazer uma visita a uma emissora de televisão. Porém a emissora quer saber a média de idades desse grupo. Desenvolva um procedimento que receba as idades desses jovens num vetor, calcule e mostre, para a emissora, a média da idade desses jovens.

Página 12


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _______________________________________________________________________

45) Hidekovisk possui um conjunto de moedas com diferentes números naturais. Ele precisa descobrir qual é a moeda que possui o maior número natural. Desenvolva uma função em que receba um vetor com os valores dessas moedas e retorne o maior valor desse vetor. 46) Sabemos que Hidekovisk possui um conjunto de moedas com diferentes números naturais. Agora ele precisa descobrir qual é a moeda que possui o menor número natural. Assim, desenvolva uma função em que receba um vetor com os valores das moedas e retorne o menor valor desse vetor. 47) Desenvolva um programa em C e um programa em Java para a seguinte situação-problema: Alguns motoristas registram os quilômetros dirigidos e os litros consumidos a cada abastecimento de seus carros. Sua função é escrever um programa que ajude esses motoristas a obter o consumo (em quilômetros por litro) de seus carros. Ao ser executado, seu programa solicitará que o usuário informe o número de quilômetros dirigidos e a quantidade de litros de combustível colocada naquele abastecimento. Após receber essa entrada, seu programa deverá calcular e mostrar a quantidade de quilômetros por litro, obtida neste abastecimento e, em seguida, a quantidade média dos abastecimentos digitados até então. Em seguida, deverá solicitar os dados do próximo abastecimento. Caso o usuário digite 0 no número de quilômetros e 0 na quantidade de litros de combustível consumidos, o programa deverá ser encerrado. Um exemplo de funcionamento do programa poderia ser:

Página 13


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _______________________________________________________________________

Digite a quantidade de quilômetros percorridos (ou 0 para sair): 320 Digite a quantidade de litros abastecidos percorridos (ou 0 para sair): 39 Seu consumo neste abastecimento é: 8.20 km/l Sua média de consumo é: 8.20 km/l Digite a quantidade de quilômetros percorridos (ou 0 para sair): 360 Digite a quantidade de litros abastecidos percorridos (ou 0 para sair): 37 Seu consumo neste abastecimento é: 9.73 km/l Sua média de consumo é: 8.97 km/l Digite a quantidade de quilômetros percorridos (ou 0 para sair): 0 Digite a quantidade de litros abastecidos percorridos (ou 0 para sair): 0 Saindo... 48)

Desenvolva um programa em C e um programa em Java para a seguinte situação-problema: Você foi encarregado de desenvolver um programa para uma empresa logística, responsável por entregar encomendas entre cidades do Brasil. Seu programa deverá armazenar as distâncias entre as 5 cidades mais atendidas pela transportadora. Você deverá utilizar os códigos das cidades (1, 2, 3, 4 ou 5) e as distâncias deverão ser armazenadas em uma tabela de distâncias, conforme o exemplo abaixo: 1

2

3

4

5

1

0

39,5

73,2

58

62

2

39,5

0

36

25,4

86,8

Página 14


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _______________________________________________________________________

3

73,2

36

0

55,1

85,7

4

58

25,4

55,1

0

23

5

62

86,8

85,7

23

0

O programa desenvolvido por você deverá inicialmente apresentar um menu com três opções: 1) Cadastramento de distâncias, 2) Consulta de distâncias e 3) Sair do programa. No cadastramento de distâncias, seu programa deverá pedir para o usuário informar a distância entre a primeira e a segunda cidade e armazená-la na tabela. Em seguida, fazer o mesmo entre a primeira e a terceira, e assim por diante até todas as distâncias estarem cadastradas. Após isso seu programa deve retornar ao menu inicial. Na consulta de distâncias, seu programa deverá pedir para o usuário informar a cidade de origem e, em seguida a cidade de destino. Caso os códigos das cidades sejam válidos, seu programa deverá retornar a distância entre as duas cidades armazenadas na tabela e, em seguida, retornar ao menu inicial. Caso o usuário digite um código incorreto, o sistema deve informar e pedir para que o usuário insira novamente um código de cidade. Caso o usuário escolha a terceira opção, o programa deverá ser encerrado. Seu

programa

deve

ser

modularizado,

utilizando

um

módulo

para

apresentar o menu (módulo procedimento sem parâmetros), um módulo para o cadastramento de distâncias (módulo função que devolve a tabela de distâncias) e outro módulo para a consulta de distâncias (módulo função parametrizado, que recebe como parâmetro a tabela de distância e devolve a distância encontrada).

Página 15


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _______________________________________________________________________

OBS: Diferente do Java, o módulo de cadastramento de usuários em C deverá ser um módulo procedimento que recebe a tabela de distâncias.

Para

que

a

tabela

informada

seja

modificada

para

acrescentar as distâncias, ao utilizarmos o módulo deveremos informar a tabela precedida do operador &. Ex: float distancias[5][5]; Cadastro(&distancias); 49)

Crie um programa que simule um sistema de autenticação. O programa deverá apresentar um menu com três opções. Na primeira opção, o programa deverá cadastrar os nomes e as senhas de 5 pessoas e retornar ao menu principal. Na segunda opção, o programa deverá perguntar o nome e a senha da pessoa que deseja acesso. Caso o nome entrado seja um dos cinco nomes cadastrados, o sistema deverá mostrar a mensagem “Acesso liberado”, e, caso contrário, “Acesso negado” e voltar ao menu principal. Caso o usuário escolha a terceira opção, o sistema deverá ser encerrado.

50) O valor de π pode ser calculado usando a seguinte série:

4

4 3

4 5

4 7

4 4 ... 9 11

A precisão da aproximação do valor de π depende da quantidade de termos da série que utilizamos para fazer esse cálculo. Crie um programa que calcule a aproximação do valor de π, utilizando n termos da série acima. O programa deverá pedir um número n ao usuário e deverá imprimir o valor aproximado de π, usando n termos (conte o primeiro 4 como um termo). Caso o usuário digite um número menor

Página 16


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _______________________________________________________________________

do que 1, o programa deverá solicitar ao usuário que entre com outro número, repetindo isso até que o usuário digite um número inteiro maior ou igual a 1.

Página 17


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES

2

APÊNDICE

2.1 GABARITO DA ATIVIDADES COMPLEMENTARES | AULA 01 GABARITO | QUESTÃO 01

01) Solução em Pseudocódigo Algoritmo Soma inicio var n1, n2, s inteiro; ler (n1, n2); s <- n1 + n2; escrever (s); fim.

01) Solução em C #include <stdio.h> main() { int n1, n2, s; printf("Digite um número: "); scanf("%d",

&n1);

Página 18


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _____________________________________________________________________

printf("Digite um número: "); scanf("%d", &n2); s = n1 + n2; printf("%d", s); }

01) Solução em Java import javax.swing.*; class Soma { public static void main (String x[]) { int n1, n2, s; n1

=

Integer.parseInt(JOptionPane.showInputDialog("Digite

um

Integer.parseInt(JOptionPane.showInputDialog("Digite

um

número")); n2

=

número")); s = n1 + n2; JOptionPane.showMessageDialog (null, s); } }

GABARITO | QUESTÃO 02

Página 19


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _____________________________________________________________________

02) Solução em Pseudocódigo Algoritmo Divisao inicio var n1, n2, q, r inteiro; ler (n1, n2); q <- n1 div n2; r <- n1 mod n2; escrever (q, r); fim.

02) Solução em C #include <stdio.h> main() { int n1, n2, q, r; printf("Digite um número: "); scanf("%d", &n1); printf("Digite um número: "); scanf("%d", &n2); q = n1 / n2;

Página 20


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _____________________________________________________________________

r = n1 % n2; printf("%d", q); printf("%d", r); }

02) Solução em Java import javax.swing.*; class Divisao { public static void main (String x[]) { int n1, n2, q, r; n1

=

Integer.parseInt(JOptionPane.showInputDialog("Digite

um

Integer.parseInt(JOptionPane.showInputDialog("Digite

um

número")); n2

=

número")); q = n1 / n2; r = n1 % n2; JOptionPane.showMessageDialog (null, q); JOptionPane.showMessageDialog (null, r); } }

GABARITO | QUESTÃO 03

Página 21


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _____________________________________________________________________

03) Solução em Pseudocódigo Algoritmo NomeSobrenome inicio var n, s alfanumérico; ler(n, s); escrever (n , " " , s); fim.

03) Solução em C #include <stdio.h> main() { char n[30], s[30]; printf("Digite seu nome: "); scanf("%s", &n); printf("Digite seu sobrenome: "); scanf("%s", &s); printf("%s %s", n, s); }

03) Solução em Java

Página 22


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _____________________________________________________________________

import javax.swing.*; class NomeSobrenome { public static void main (String x[]) { String n, s; n = (JOptionPane.showInputDialog("Digite seu nome")); s = ("Digite seu sobrenome")); JOptionPane.showMessageDialog (null, n + " " + s); } }

GABARITO | QUESTÃO 04

04) Solução em Pseudocódigo

Página 23


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _____________________________________________________________________

Algoritmo ParImpar inicio var n inteiro; ler (n); se (n mod 2 = 0) então escrever ("é par"); senão escrever ("é ímpar"); fimse; fim.

04) Solução em C #include <stdio.h> main() { int n; printf("Digite um número: "); scanf("%d",

&n);

Página 24


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _____________________________________________________________________

if (n % 2 == 0) { printf("é par"); } else { printf("é ímpar"); } }

04) Solução em Java import javax.swing.*; class ParImpar { public static void main (String x[]) { int n; n

=

Integer.parseInt(JOptionPane.showInputDialog("Digite

um

número")); if (n % 2 == 0) { JOptionPane.showMessageDialog (null, "é par"); } else { JOptionPane.showMessageDialog (null, "é ímpar" ); } } }

Página 25


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _____________________________________________________________________

GABARITO | QUESTÃO 05

05) Solução em Pseudocódigo Algoritmo Nota inicio var n real; ler (n); se (n >= 5) então escrever ("aprovado"); senão se (nota >= 3) então escrever ("em recuperação"); senão escrever ("reprovado"); fimse; fimse; fim.

05) Solução em C

Página 26


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _____________________________________________________________________

#include <stdio.h> main() { float n; printf("Digite um numero: "); scanf("%f", &n); if (n >= 5) { printf("Aprovado"); } else { if (n >= 3) { printf("em recuperação"); } else { printf("reprovado"); } } }

05) Solução em Java

Página 27


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _____________________________________________________________________

import javax.swing.*; class Nota { public static void main (String x[]) { double n; n

=

Double.parseDouble(JOptionPane.showInputDialog("Digite

um

número")); if (n >= 5) { JOptionPane.showMessageDialog (null, "aprovado"); } else { if ( n>= 3) { JOptionPane.showMessageDialog (null, "em recuperação" ); } else { JOptionPane.showMessageDialog (null, "reprovado" ); } } } }

GABARITO | QUESTÃO 06

Página 28


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _____________________________________________________________________

06) Solução em Pseudocódigo Algoritmo Semestre inicio var m inteiro; ler (m); se (m >= 1 e m <= 6) então escrever ("primeiro semestre"); senão escrever ("segundo semestre"); fimse; fim.

06) Solução em C #include <stdio.h> main() { int m; printf("Digite um numero: "); scanf("%d", &m); if (m >= 1 && m <= 6)

Página 29


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _____________________________________________________________________

{ printf("primeiro semestre"); } else { printf("segundo semestre"); } }

06) Solução em Java import javax.swing.*; class Semestre { public static void main (String x[]) { int m; m

=

Integer.parseInt(JOptionPane.showInputDialog("Digite

um

número")); if (m >= 1 e m <= 6)) { JOptionPane.showMessageDialog (null, "primeiro semestre"); } else { JOptionPane.showMessageDialog (null, "segundo semestre" ); } }

Página 30


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _____________________________________________________________________

}

GABARITO | QUESTÃO 07

07) Solução em Pseudocódigo Algoritmo trimestre inicio var m inteiro; ler (m); escolha (m) caso 1, 2, 3 : escrever ("primeiro trimestre"); caso 4, 5, 6 : escrever ("segundo trimestre"); caso 7, 8, 9 : escrever ("terceiro trimestre"); caso 10, 11, 12 : escrever ("quarto trimestre"); caso contrário: escrever ("inválido"); fimescolha; fim.

07) Solução em C #include <stdio.h> main() {

Página 31


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _____________________________________________________________________

int m; printf("Digite um numero: "); scanf("%d", &m); switch (m) { case 1: case 2: case 3: printf("primeiro trimestre"); break; case 4: case 5: case 6: printf("segundo trimestre"); break; case 7: case 8: case 9: printf("terceiro trimestre"); break; case 10: case 11: case 12: printf("quarto trimestre"); break; default: printf("opção inválida");

Página 32


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _____________________________________________________________________

} }

07) Solução em Java import javax.swing.*; class Trimestre { public static void main (String x[]) { int m; m

=

Integer.parseInt(JOptionPane.showInputDialog("Digite

um

número")); switch (m) { case 1, 2, 3: JOptionPane.showMessageDialog (null, "primeiro trimestre"); break; case 4, 5, 6: JOptionPane.showMessageDialog (null, "primeiro trimestre"); break; case 7, 8, 9: JOptionPane.showMessageDialog (null, "primeiro trimestre"); break; case 10, 11, 12: JOptionPane.showMessageDialog (null, "primeiro trimestre"); break; case

default:

JOptionPane.showMessageDialog

(null,

"opção

Página 33


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _____________________________________________________________________

inválida"); } } }

GABARITO | QUESTÃO 08

08) Solução em Pseudocódigo Algoritmo tarefas inicio var dia alfanumérico; ler (dia); escolha (dia) caso "segunda-feira", "sexta-feira" : escrever ("estudar algoritmos"); caso "terça-feira" : escrever ("estudar matemática"); caso "quarta-feira" : escrever ("estudar inglês"); caso "quinta-feira" : escrever ("estudar português"); caso "sábado" : escrever ("passear"); caso "domingo" : escrever ("descansar"); caso contrário : escrever ("inválido"); fim.

08) Solução em C #include <stdio.h>

Página 34


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _____________________________________________________________________

main() { char dia; printf("Digite um numero: "); scanf("%c", &dia); switch (dia) { case '1': case '5': printf("estudar algoritmos"); break; case '2': printf("estudar matemática"); break; case '3': printf("estudar inglês"); break; case '4': printf("estudar português"); break; case '6': printf("passear"); break; case '7': printf("descansar");

Página 35


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _____________________________________________________________________

break; default: printf("opção inválida"); } }

08) Solução em Java import javax.swing.*; class Tarefa { public static void main (String x[]) { char dia; dia = (JOptionPane.showInputDialog("Digite um número")).charAt(0); switch (m) { case '1', '5': JOptionPane.showMessageDialog (null, "estudar algoritmos"); break; case

'2'

:

JOptionPane.showMessageDialog

(null,

"estudar

matemática"); break; case '3' : JOptionPane.showMessageDialog (null, "estudar inglês"); break; case

'4'

:

JOptionPane.showMessageDialog

(null,

"estudar

português"); break;

Página 36


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _____________________________________________________________________

case '6' : JOptionPane.showMessageDialog (null, "passear"); break; case '7' : JOptionPane.showMessageDialog (null, "descansar"); break; case

default:

JOptionPane.showMessageDialog

(null,

"opção

inválida"); } } }

GABARITO | QUESTÃO 09

09) Solução em Pseudocódigo Algoritmo soma var i, n, s <- 0 inteiro; para i de 1 até 10 passo +1 faça ler (n); s <- s + n; fimpara; escrever (s); fim.

Página 37


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _____________________________________________________________________

09) Solução em C #include <stdio.h> main() { int i, n, s = 0; for (i = 1; i < 11; i++) { printf("Digite um número: "); scanf("%d", &n); s = s + n; } printf("%d", s); }

09) Solução em Java import javax.swing.*; class Soma { public static void main (String x[]) { int i, n, s = 0; for (i = 1; i < 11; i++) { n = Integer.parseInt(JOptionPane.showInputDialog("Digite um

Página 38


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _____________________________________________________________________

número")); s = s + n; } JOptionPane.showMessageDialog (null, s); } }

GABARITO | QUESTÃO 10

10) Solução em Pseudocódigo Algoritmo SomaPares var i, n, s <- 0 inteiro; para i de 1 até 15 passo +1 faça ler (n); se (n mod 2 = 0) então s <- s + n; fimse; fimpara; escrever (s);

Página 39


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _____________________________________________________________________

fim.

10) Solução em C #include <stdio.h> main() { int i, n, s = 0; for (i = 1; i < 16; i++) { printf("Digite um número: "); scanf("%d", &n); if (n % 2 == 0) { s = s + n; } } printf("%d", s); }

10) Solução em Java import javax.swing.*; class SomaPares { public static void main (String x[]) {

Página 40


LÓGICA DA PROGRAMAÇÃO ATIVIDADES COMPLEMENTARES _____________________________________________________________________

int i, n, s = 0; for (i = 1; i < 16; i++) { n = Integer.parseInt(JOptionPane.showInputDialog("Digite um número")); if (n % 2 == 0) { s = s + n; } } JOptionPane.showMessageDialog (null, s); } }

Página 41


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES

2.2 GABARITO DAS ATIVIDADES COMPLEMENTARES | AULA 02 GABARITO | QUESTÃO 11

11) Solução em Pseudocódigo Algoritmo Fatorial var i, n, fat <- 1 inteiro; ler (n); para i de 1 até n passo + 1 faça fat <- fat * i; fimpara; escrever (fat); fim.

11) Solução em C #include <stdio.h> main() { int i, n, fat = 1; printf("Digite um número: "); scanf("%d", &n); for

(i

=

1;

i

<=

n;

i++)

Página 42


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

{ fat = fat + i; } printf("%d", fat); }

11) Solução em Java import javax.swing.*; class Fatorial { public static void main (String x[]) { int i, n, fat = 1; n

=

Integer.parseInt(JOptionPane.showInputDialog("Digite

um

número")); for (i = 1; i <= n; i++) { fat = fat + i; } JOptionPane.showMessageDialog (null, fat); } }

Página 43


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

GABARITO | QUESTÃO 12

12) Solução em Pseudocódigo Algoritmo Tabuada inicio var t, i inteiro; ler (t); para i de 1 até 10 passo + 1 faça escrever (i , " x " , t , " = " , (t*i)); fimpara; fim.

12) Solução em C #include <stdio.h> main() { int i, t; printf("Digite um número: "); scanf("%d", &t); for (i = 1; i <= 10; i++)

Página 44


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

{ printf("%d x %d = %d\n",i , t, (i * t)); } }

12) Solução em Java import javax.swing.*; class Tabuada { public static void main (String x[]) { int i, t; t

=

Integer.parseInt(JOptionPane.showInputDialog("Digite

um

número")); for (i = 1; i <= 10; i++) { JOptionPane.showMessageDialog (null, i + " x " + t

+ " = " +

(t*i)); } } }

Página 45


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

GABARITO | QUESTÃO 13

13) Solução em Pseudocódigo Algoritmo MaiorNumero inicio var n, maior, i inteiro; ler (n); maior <- n; para i de 1 até 19 passo +1 faça ler (n); se (n > maior) então maior <- n); fimse; fimpara; escrever(maior); fim.

13) Solução em C #include <stdio.h> main() { int n, maior, i;

Página 46


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

printf("Digite um número: "); scanf("%d", &n); maior = n; for (i = 1 ; i < 20 ; i++) { printf("Digite um número: "); scanf("%d", &n); if (n > maior) { maior = n; } } printf("%d", maior); }

13) Solução em Java import javax.swing.*; class MaiorNumero { public static void main (String x[]) { int n, maior, i;

Página 47


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

n

=

Integer.parseInt(JOptionPane.showInputDialog("Digite

um

número")); maior = n; for (i = 1 ; i < 20 ; i++) { n

=

Integer.parseInt(JOptionPane.showInputDialog("Digite

um

número")); if (n > maior) { maior = n; } } JOptionPane.showMessageDialog (null, maior ); } }

GABARITO | QUESTÃO 14

14) Solução em Pseudocódigo Algoritmo SomaQuadrado inicio var s, n1, n2 real; ler (n1, n2); s <- n1*n1 + n2*n2;

Página 48


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

escrever (s); fim.

14) Solução em C #include <stdio.h> main() { int n1, n2, s; printf("Digite um número: "); scanf("%d", &n1); printf("Digite um número: "); scanf("%d", &n2); s = n1*n1 + n2*n2; printf("%d", s); }

14) Solução em Java import javax.swing.*; class SomaQuadrado { public static void main (String x[])

Página 49


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

{ double n1, n2, s; n1

=

Double.parseDouble(JOptionPane.showInputDialog("Digite

um

Double.parseDouble(JOptionPane.showInputDialog("Digite

um

número")); n2

=

número")); s = n1*n1 + n2*n2; JOptionPane.showMessageDialog (null, s); } }

GABARITO | QUESTÃO 15

15) Solução em Pseudocódigo Algoritmo SomaQuadrado inicio var s, n1, n2 real; ler (n1, n2); s <- pot(n1,3) + pot(n2,3); escrever (s); fim.

Página 50


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

15) Solução em C #include <stdio.h> #include <math.h> main() { int n1, n2, s; printf("Digite um número: "); scanf("%d", &n1); printf("Digite um número: "); scanf("%d", &n2); s = pow(n1,3) + pow(n2,3); printf("%d", s); }

15) Solução em Java import javax.swing.*; class SomaQuadrado { public static void main (String x[]) {

Página 51


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

double n1, n2, s; n1

=

Double.parseDouble(JOptionPane.showInputDialog("Digite

um

Double.parseDouble(JOptionPane.showInputDialog("Digite

um

número")); n2

=

número")); s = Math.pow(n1,3) + Math.pow(n2,3); JOptionPane.showMessageDialog (null, s); } }

GABARITO | QUESTÃO 16

16) Solução em Pseudocódigo Algoritmo Raiz inicio var n, r inteiro; ler (n); r <- rad(n); escrever (r); fim.

Página 52


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

16) Solução em C #include <stdio.h> #include <math.h> main() { int n; float r; printf("Digite um número: "); scanf("%d", &n); r = sqrt(n); printf("%f", r); }

16) Solução em Java import javax.swing.*; class Raiz { public static void main (String x[]) { int n double r;

Página 53


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

n

=

Integer.parseInt(JOptionPane.showInputDialog("Digite

um

número")); r = Math.sqrt(n); JOptionPane.showMessageDialog (null, r); } }

GABARITO | QUESTÃO 17

17) Solução em Pseudocódigo Algoritmo Media inico var n1, n2, m real; ler (n1, n2); m <- (n1 + n2) / 2; escrever (m); fim.

17) Solução em C #include <stdio.h> main()

Página 54


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

{ float n1, n2, m; printf("Digite um número: "); scanf("%f", &n1); printf("Digite um número: "); scanf("%f", &n2); m = (n1 + n2) / 2; printf("%f", m); }

17) Solução em Java import javax.swing.*; class Media { public static void main (String x[]) { double n1, n2, m; n1

=

Double.parseDouble(JOptionPane.showInputDialog("Digite

um

Double.parseDouble(JOptionPane.showInputDialog("Digite

um

número")); n2

=

número")); m = (n1 + n2) / 2;

Página 55


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

JOptionPane.showMessageDialog (null, m); } }

GABARITO | QUESTÃO 18

18) Solução em Pseudocódigo Algoritmo Divisivel3 inicio var n inteiro; ler(n); se (n mod 3 = 0) então escrever ("é divisível por três"); senão escrever ("não é divisível por três"); fimse; fim.

18) Solução em C #include <stdio.h> main()

Página 56


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

{ int n; printf("Digite um número: "); scanf("%d", &n); if (n % 3 == 0) { printf("é divisível por 3"); } else { printf("não é divisível por 3" ); } }

18) Solução em Java import javax.swing.*; class Divisivel3 { public static void main (String x[]) { int n; n

=

Integer.parseInt(JOptionPane.showInputDialog("Digite

um

número")); if (n % 3 == 0)

Página 57


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

{ JOptionPane.showMessageDialog (null, "é divisível por 3"); } else { JOptionPane.showMessageDialog (null, "não é divisível por 3" ); } } }

GABARITO | QUESTÃO 19

19) Solução em Pseudocódigo Algoritmo Area inicio var l, a real; ler (l); se (l > 0) então a <- l * l; escrever (a); senão escrever ("valor inválido"); fimse; fim.

Página 58


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

19) Solução em C #include <stdio.h> main() { float l, a; printf("Digite um número: "); scanf("%f", &l); a = l * l; printf("%f", a); }

19) Solução em Java import javax.swing.*; class Area { public static void main (String x[]) { double l, a; l

=

Double.parseDouble(JOptionPane.showInputDialog("Digite

um

número"));

Página 59


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

a = l * l; JOptionPane.showMessageDialog (null, a); } }

GABARITO | QUESTÃO 20

20) Solução em Pseudocódigo Algoritmo Comprimento inicio var r, c real; ler (r); se (r > 0) então c <- 2 * 3.14 * r; escrever (c); senão escrever ("valor inválido"); fimse; fim.

Página 60


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

20) Solução em C #include <stdio.h> main() { float c, r; printf("Digite um número: "); scanf("%f", &r); if (r > 0) { c = 2 * 3.14 * r; printf("%f", c); } else { printf("valor inválido" ); } }

20) Solução em Java import javax.swing.*; class Comprimento { public static void main (String x[])

Página 61


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

{ double c, r; r

=

Double.parseDouble(JOptionPane.showInputDialog("Digite

um

raio")); if (r > 0) { c = 2 * 3.14 * r; JOptionPane.showMessageDialog (null, c); } else { JOptionPane.showMessageDialog (null, "valor inválido" ); } } }

Página 62


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES

2.3 GABARITO DAS ATIVIDADE COMPLEMENTARES | AULA 03 GABARITO | QUESTÃO 21

21) Solução em Pseudocódigo Algoritmo AreaCírculo inicio var r, a real; ler (r); se (r > 0) então a <- 3.14 * r * r escrever (a); senão escrever ("valor inválido"); fimse; fim.

21) Solução em C #include <stdio.h> main() { float

a,

r;

Página 63


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

printf("Digite um número: "); scanf("%f", &r); if (r > 0) { a = 3.14 * r * r; printf("%f", a); } else { printf("valor inválido" ); } }

21) Solução em Java import javax.swing.*; class AreaCirculo { public static void main (String x[]) { double a, r; r

=

Double.parseDouble(JOptionPane.showInputDialog("Digite

um

raio")); if (r > 0) {

Página 64


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

a = 3.14 * r * r; JOptionPane.showMessageDialog (null, a); } else { JOptionPane.showMessageDialog (null, "valor inválido" ); } } }

GABARITO | QUESTÃO 22

22) Solução em Pseudocódigo Algoritmo Soma inicio var i, s <- 0, n inteiro; para i de 1 até 30 passo +1 faça ler (n); s <- s + n; fimpara; escrever (n); fim.

Página 65


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

22) Solução em C #include <stdio.h> main() { int i, n, s = 0; for (i = 1; i < 31; i++) { printf("Digite um número: "); scanf("%d", &n); s = s + n; } printf("%d", s); }

22) Solução em Java import javax.swing.*; class Soma { public static void main (String x[]) { int i, n, s = 0; for (i = 1; i < 31; i++)

Página 66


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

{ n = Integer.parseInt(JOptionPane.showInputDialog("Digite um número")); s = s + n; } JOptionPane.showMessageDialog (null, s); } }

GABARITO | QUESTÃO 23

23) Solução em Pseudocódigo Algoritmo Quadrado inicio var n, i inteiro; para i de 10 até 20 passo +1 faça n <- i * i; escrever (n); fimpara; fim.

Página 67


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

23) Solução em C #include <stdio.h> main() { int i, n; for (i = 10; i < 21; i++) { n = i * i; printf("%d\n", n); } }

23) Solução em Java import javax.swing.*; class Quadrado { public static void main (String x[]) { int i, n; for (i = 10; i < 21; i++) { n = i * i; JOptionPane.showMessageDialog (null, s);

Página 68


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

} } }

GABARITO | QUESTÃO 24

24) Solução em Pseudocódigo Algoritmo Idade inicio var id, i, menor inteiro; ler (id); menor <- id; para i de 2 até 20 passo +1 faça ler (id); se (menor > id) então menor <- id; fimse; fimpara; escrever (menor); fim.

Página 69


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

24) Solução em C #include <stdio.h> main() { int i, id, menor; printf("Digite um número: "); scanf("%d", &id); menor = id; for (i = 2; i < 21; i++) { printf("Digite um número: "); scanf("%d", &id ); if (menor > id) { menor = id; } } printf("%d", menor); }

Página 70


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

24) Solução em Java import javax.swing.*; class Idade { public static void main (String x[]) { int i, id, menor; id

=

Integer.parseInt(JOptionPane.showInputDialog("Digite

um

número")); menor = id; for (i = 2; i < 21; i++) { n = Integer.parseInt(JOptionPane.showInputDialog("Digite um número")); if (menor > id) { menor = id; } } JOptionPane.showMessageDialog (null, menor); } }

GABARITO | QUESTÃO 25

Página 71


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

25) Solução em Pseudocódigo Algoritmo Media inicio var n, i inteiro; m <- 0 real; para i de 1 até 10 passo +1 faça ler (n); m <- m + n; fimpara; m <- m / 10; escrever (m); fim.

25) Solução em C #include <stdio.h> main() { int i, n; float m = 0; for (i = 1; i < 11; i++) {

Página 72


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

printf("Digite um número: "); scanf("%d", &n); m = m + n; } m = m / 10; printf("%f", m); }

25) Solução em Java import javax.swing.*; class Media { public static void main (String x[]) { int i, n; double m = 0; for (i = 1; i < 11; i++) { n

=

Integer.parseInt(JOptionPane.showInputDialog("Digite

um

número")); m = m + n; } m = m / 10; JOptionPane.showMessageDialog (null, m); } }

Página 73


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

GABARITO | QUESTÃO 26

26) Solução em Pseudocódigo inteiro Soma (n1 inteiro, n2 inteiro) inicio var s inteiro; s <- n1 + n2; retornar s; fim.

26) Solução em C int Soma (int n1, int n2) { int s; s = n1 + n2; return s; }

26) Solução em Java

Página 74


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

int Soma (int n1, int n2) { int s; s = n1 + n2; return s; }

GABARITO | QUESTÃO 27

27) Solução em Pseudocódigo real Produto (n1 real, n2 real, n3 real) inicio var p real; p <- n1 * n2 * n3; retornar p; fim.

27) Solução em C float Produto (float n1, float n2, float n3) { float p;

Página 75


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

p = n1 * n2 * n3; return p; }

27) Solução em Java double Produto (double n1, double n2, double n3) { double p; p = n1 * n2 * n3; return p; }

GABARITO | QUESTÃO 28

28) Solução em Pseudocódigo lógico Verifica (n inteiro) inicio se (n > 0) então retornar verdadeiro; senão retornar falso; fimse;

Página 76


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

fim.

28) Solução em C #include <stdbool.h> bool Verifica (int n) { if (n > 0) { return true; } else { return false; } }

28) Solução em Java boolean Verifica (int n) { if (n > 0) { return true; } else {

Página 77


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

return false; } }

GABARITO | QUESTÃO 29

29) Solução em Pseudocódigo Soma (n1 inteiro, n2 inteiro) inicio var s inteiro; s <- n1 + n2; escrever (s); fim.

29) Solução em C void Soma (int n1, int n2) { int s; s = n1 + n2; printf("%d", s); }

29) Solução em Java

Página 78


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

Soma (int n1, int n2) { int s; s = n1 + n2; JOptionPane.showMessageDialog(null, s); }

GABARITO | QUESTÃO 30

30) Solução em Pseudocódigo Produto (n1 real, n2 real, n3 real) inicio var p real; p <- n1 * n2 * n3; escrever (p); fim.

30) Solução em C

Página 79


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

Produto (float n1, float n2, float n3) { float p; p = n1 * n2 * n3; printf("%f", p); }

30) Solução em Java Produto (double n1, double n2, double n3) { double p; p = n1 * n2 * n3; JOptionPane.showMessageDialog(null, p); }

Página 80


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES

2.4 GABARITO DAS ATIVIDADES COMPLEMENTARES | AULA 04 GABARITO | QUESTÃO 31

31) Solução em Pseudocódigo Verifica (n inteiro) inicio se (n > 0) então escrever ("é positivo"); senão escrever ("é não positivo"); fimse; fim.

31) Solução em C Verifica (int n) { if (n > 0) { printf("é positivo"); } else { printf("é não positivo"); } }

Página 81


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

31) Solução em Java Verifica (int n) { if (n > 0) { JOptionPane.showMessageDialog(null,"é positivo"); } else { JOptionPane.showMessageDialog(null,"é não positivo"); } }

GABARITO | QUESTÃO 32

32) Solução em Pseudocódigo Algoritmo VetorNumeros inicio var Vet[10], n, i inteiro; para i de 0 até 9 passo +1 faça ler (n); Vet[i] <- n;

Página 82


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

escrever (Vet[i]); fimpara; fim.

32) Solução em C #include <stdio.h> main() { int i, n, Vet[10]; for (i = 0; i < 10; i++) { printf("Digite um número: "); scanf("%d", &n); Vet[i] = n; printf("%d\n", Vet[i]); } }

32) Solução em Java import javax.swing.*; class VetorNumeros { public static void main (String x[]) {

Página 83


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

int i, n, Vet[] = new int [10]; for (i = 0; i < 10; i++) { n = Integer.parseInt(JOptionPane.showInputDialog("Digite um número")); Vet[i] = n; JOptionPane.showMessageDialog (null, Vet[i]); } } }

GABARITO | QUESTÃO 33

33) Solução em Pseudocódigo inteiro MaiorNumero (Vet[] inteiro) inicio var maior <- Vet[0], i inteiro; para i de 1 até (Vet.tamanho-1) passo +1 faça se (Vet[i] > maior) então maior <- Vet[i]; fimse; fimpara;

Página 84


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

retornar maior; fim.

33) Solução em C int

MaiorNumero (int *Vet, int tam)

{ int maior = Vet[0], i; for (i = 0 ; i < tam; i++) { if (Vet[i] > maior) { maior = Vet[i]; } } return maior; }

33) Solução em Java int

MaiorNumero (int Vet[])

{ int maior = Vet[0], i; for ( i = 1 ; i <= (Vet.length-1) ; i++) { if (Vet[i] > maior)

Página 85


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

{ maior = Vet[i]; } } return maior; }

GABARITO | QUESTÃO 34

34) Solução em Pseudocódigo SomaVetor (Vet[] real) var i, s <- 0 inteiro; para i de 0 até (Vet.tamanho-1) passo +1 faça s <- s + Vet[i]; fimpara; escrever s; fim.

34) Solução em C SomaVetor (int *Vet, int tam) { int s = 0, i;

Página 86


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

for ( i = 0 ; i < tam ; i++) { s = s + Vet[i]; } printf("%d", s); }

34) Solução em Java double SomaVetor (int Vet[]) { int s = 0, i; for ( i = 0 ; i <= (Vet.length-1) ; i++) { s = s + Vet[i]; } JOptionPane.showMessageDialog(null, s); }

Página 87


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

GABARITO | QUESTÃO 35

35) Solução em Pseudocódigo ParesVetor (Vet[] inteiro) inicio var i inteiro; para i de 0 até (Vet.tamanho-1) passo +1 faça se (Vet[i] mod 2 = 0) então escrever (Vet[i]); fimse; fimpara;

35) Solução em C ParesVetor (int *Vet, int tam) { int i; for ( i = 0; i < tam; i++) { if (Vet[i] % 2 == 0) { printf("%d", Vet[i]);

Página 88


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

} } }

35) Solução em Java ParesVetor (int Vet[]) { int i; for ( i = 0 ; i <= (Vet.length-1) ; i++) { if (Vet[i] % 2 == 0) { JOptionPane.showMessageDialog(null, Vet[i]); } } }

GABARITO | QUESTÃO 36

36) Solução em Pseudocódigo real PositivoVetor(Vet[] real) inicio var i, s <- 0 inteiro;

Página 89


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

para i de 0 ate (Vet.tamanho-1) passo +1 faça se (Vet[i] > 0) então s <- s + Vet[i]; fimse; fimpara; retornar s; fim.

36) Solução em C float PositivoVetor (float *Vet, int tam) { int i, s = 0; for ( i = 0 ; i < tam; i++) { if (Vet[i] > 0) { s = s + Vet[i]; } } return s; }

Página 90


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

36) Solução em Java double PositivoVetor (double Vet[]) { int i, s = 0; for ( i = 0 ; i <= (Vet.length-1) ; i++) { if (Vet[i] > 0) { s = s + Vet[i] } } return s; }

GABARITO | QUESTÃO 37

37) Solução em Pseudocódigo inteiro MaiorNumero (Mat[][] inteiro) inicio var maior <- Mat[0][0], i, j inteiro; para i de 0 até (Mat.tamanho-1) passo +1 faça

Página 91


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

para j de 0 até (Mat[0].tamanho-1) passo +1 faça se (Mat[i][j] > maior) então maior <- Mat[i][j]; fimse; fimpara; fimpara; retornar maior; fim.

37) Solução em C int

MaiorNumero (int **Mat, int m, int n)

{ int maior = Mat[0][0], i, j; for ( i = 0 ; i < m ; i++) { for ( j = 0 ; j < n ; j++) { if (Mat[i][j] > maior) { maior = Mat[i][j]; } } } return maior; }

Página 92


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

37) Solução em Java int

MaiorNumero (int Mat[][])

{ int maior = Mat[0][0], i, j; for ( i = 0 ; i <= (Mat.tamanho-1) ; i++) { for ( j = 0 ; j <= (Mat[0].tamanho-1) ; j++) { if (Mat[i][j] > maior) { maior = Mat[i][j]; } } } return maior; }

GABARITO | QUESTÃO 38

38) Solução em Pseudocódigo Algoritmo Soma inicio var

Página 93


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

s <- 0, i <- 1, n inteiro; enquanto (i <=50) faça ler (n); s <- s + n; i <- i + 1; fimenquanto; escrever (s); fim

38) Solução em C #include <stdio.h> main() { int s = 0, i = 1, n; while (i <=50) { printf("Digite um número: "); scanf("%d", &n); s = s + n; i = i + 1; } printf("%d", s); }

Página 94


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

38) Solução em Java import javax.swing.*; class Soma { public static void main (String x[]) { int s = 0, i = 1, n; while (i <=50) { n

=

Integer.parseInt(JOptionPane.showInputDialog("digite

um

número")); s = s + n; i = i + 1; } JOptionPane.showMessageDialog (null, s); } }

GABARITO | QUESTÃO 39

39) Solução em Pseudocódigo Algoritmo Produto inicio var

Página 95


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

p <- 1, i <- 1, n inteiro; enquanto (i <=20) faça p <- p * i; i <- i + 1; fimenquanto; escrever (p); fim.

39) Solução em C #include <stdio.h> main() { int p = 1, i = 1; while (i <=20) { p = p * i; i = i + 1; printf("%d\n", p); } printf("%d", p); }

Página 96


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

39) Solução em Java import javax.swing.*; class Produto { public static void main (String x[]) { int p = 1, i = 1; while (i <=20) { p = p * i; i = i + 1; } JOptionPane.showMessageDialog (null, p); } }

GABARITO | QUESTÃO 40

40) Solução em Pseudocódigo Algoritmo Opcao inicio var op inteiro;

Página 97


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

faça ler(op); enquanto (op <> 0); fim.

40) Solução em C #include <stdio.h> main() { int op = 0; do { printf("Digite um número: "); scanf("%d", &op); } while (op != 0); }

40) Solução em Java import javax.swing.*; class Opcao { public static void main (String x[]) { int op = 0;

Página 98


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

do { op

=

Integer.parseInt(JOptionPane.showInputDialog("Digite

uma

opção")); while (op != 0); } }

Página 99


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES

2.5 GABARITO DAS ATIVIDADES COMPLEMENTARES | AULA 05 GABARITO | QUESTÃO 41

41) Solução em Pseudocódigo Algoritmo Serie inicio var n, i <- 1 inteiro; s <- 0 real; ler (n); enquanto (i <= n) faça s <- s + 1/i; fimenquanto; escrever (s); fim.

41) Solução em C #include <stdio.h> main() { int i = 1, n; float

s

=

0;

Página 100


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

printf("Digite um número: "); scanf("%d", &n); while (i <=n) { s = s + 1.0/i; i = i + 1; } printf("%f", s); }

41) Solução em Java import javax.swing.*; class Serie { public static void main (String x[]) { int i = 1, n; double s = 0; n

=

Integer.parseInt(JOptionPane.showInputDialog("digite

um

número")); while (i <=n) { s = s + 1/i; i = i + 1;

Página 101


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

} JOptionPane.showMessageDialog (null, s); } }

GABARITO | QUESTÃO 42

42) Solução em Pseudocódigo Algoritmo Potencia inicio var a, b, pot <- 1 inteiro; ler (a, b); enquanto (b >= 1) faça pot <- pot * a; b <- b – 1; fimenquanto; escrever (pot); fim.

42) Solução em C #include <stdio.h> main()

Página 102


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

{ int a, b, pot = 1; printf("Digite um número: "); scanf("%d", &a); printf("Digite um número: "); scanf("%d", &b); while (b >= 1) { pot = pot * a; b = b - 1; } printf("%d", pot); }

42) Solução em Java import javax.swing.*; class Potencia { public static void main (String x[]) { int a, b, pot = 1;

Página 103


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

a

=

Integer.parseInt(JOptionPane.showInputDialog("digite

um

Integer.parseInt(JOptionPane.showInputDialog("digite

um

número")); b

=

número")); while (b >= 1) { pot = pot * a; b = b - 1; } JOptionPane.showMessageDialog (null, pot); } }

GABARITO | QUESTÃO 43

43) Solução em Pseudocódigo real Media (Vet[] inteiro) inicio var m <- 0, i inteiro; para i de 0 até (Vet.tamanho -1) passo +1 faça m <- m + Vet[i]; fimpara; m <- m / Vet.tamanho; retornar (m); fim.

Página 104


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

43) Solução em C float Media (int *Vet, int tam) { int i; float m = 0.0; for ( i = 0 ; i < tam; i++) { m = m + Vet[i]; } m = m / tam; return m; }

43) Solução em Java real Media (int Vet[]) { int m = 0, i; for ( i = 0 ; i <= (Vet.length-1) ; i++) { m = m + Vet[i]; } m = m / Vet.length; return m; }

Página 105


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

GABARITO | QUESTÃO 44

44) Solução em Pseudocódigo Media (Vet[] inteiro) inicio var m <- 0, i inteiro; para i de 0 até (Vet.tamanho -1) passo +1 faça m <- m + Vet[i]; fimpara; m <- m / Vet.tamanho; escrever (m); fim.

44) Solução em C Media (int *Vet, int tam) { int i; float m = 0.0; for ( i = 0 ; i < tam; i++) { m = m + Vet[i]; } m = m / tam; printf("%f", m);

Página 106


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

}

44) Solução em Java Media (int Vet[]) { int m = 0, i; for ( i = 0 ; i <= (Vet.length-1) ; i++) { m = m + Vet[i]; } m = m / Vet.length; JOptionPane.showMessageDialog(null, m); }

GABARITO | QUESTÃO 45

45) Solução em Pseudocódigo real Maior (Vet[] real) inicio i, maior real; maior <- Vet[0]; para i de 1 até (Vet.tamanho – 1) passo +1 faça se (Vet[i] > maior)

Página 107


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

então maior <- Vet[i]; fimse; fimpara; retornar maior; fim.

45) Solução em C float MaiorNumero (float *Vet, int tam) { float maior; int i; maior = Vet[0]; for ( i = 0 ; i < tam; i++) { if (Vet[i] > maior) { maior = Vet[i]; } } return maior; }

45) Solução em Java double MaiorNumero (double Vet[])

Página 108


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

{ double maior, i; maior = Vet[0]; for ( i = 1 ; i <= (Vet.length-1) ; i++) { if (Vet[i] > maior) { maior = Vet[i]; } } return maior; }

GABARITO | QUESTÃO 46

46) Solução em Pseudocódigo Menor (Vet[] real) inicio i, menor real; menor <- Vet[0]; para i de 1 até (Vet.tamanho – 1) passo +1 faça se (Vet[i] < menor) então menor <- Vet[i];

Página 109


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

fimse; fimpara; retornar menor; fim.

46) Solução em C float MaiorNumero (float *Vet, int tam) { float menor; int i; menor = Vet[0]; for ( i = 0 ; i < tam; i++) { if (Vet[i] < menor) { menor = Vet[i]; } } return menor; }

46) Solução em Java double MenorNumero (double Vet[])

Página 110


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

{ double menor, i; menor = Vet[0]; for ( i = 1 ; i <= (Vet.length-1) ; i++) { if (Vet[i] < menor) { menor = Vet[i]; } } return menor; }

GABARITO | QUESTÃO 47

47) Solução em C #include <stdio.h> // módulo principal main() { // declaração de variáveis e/ou constantes int contador = 0; float quilometros, litros;

Página 111


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

float consumoAtual = 0; float consumoAcumulado = 0; do { printf("Digite a quantidade de quilometros percorridos (ou 0 para sair): "); scanf("%f", &quilometros); printf("Digite a quantidade de litros abastecidos percorridos (ou 0 para sair): "); scanf("%f", &litros); if (litros != 0 && quilometros != 0) { contador = contador + 1; consumoAtual = quilometros / litros; consumoAcumulado = consumoAcumulado + consumoAtual; printf("Seu

consumo

neste

média

de

abastecimento

é:

%fkm/l

\n",

consumoAtual); printf("Sua

consumo

é:

%fkm/l

\n",

(consumoAcumulado/contador) ); } else { printf("Saindo... \n"); } } while (litros != 0 && quilometros != 0);// fim do do } // fim do main

Página 112


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

47) Solução em Java import javax.swing.*; public class Consumo { public static void main(String[] args) { // declaração de variáveis e/ou constantes int contador = 0; double quilometros, litros; double consumoAtual = 0; double consumoAcumulado = 0; do { quilometros

=

Double.parseDouble(JOptionPane.showInputDialog("Digite a quantidade de quilometros percorridos (ou 0 para sair)")); litros = Double.parseDouble(JOptionPane.showInputDialog("Digite a quantidade de litros abastecidos percorridos (ou 0 para sair)")); if (litros != 0 && quilometros != 0) { contador = contador + 1; consumoAtual = quilometros / litros; consumoAcumulado = consumoAcumulado + consumoAtual;

Página 113


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

JOptionPane.showMessageDialog(null,"Seu

consumo

neste

abastecimento é: " + consumoAtual + "km/l"); JOptionPane.showMessageDialog(null,"Sua média de consumo é: " + (consumoAcumulado/contador) + "km/l"); } else { JOptionPane.showMessageDialog(null,"Saindo..."); } } while (litros != 0 && quilometros != 0);// fim do do } // fim do void main } //fim da classe

GABARITO | QUESTÃO 48

48) Solução em C #include <stdio.h> #include<stdlib.h> // módulo função Menu que retorna a opção digitada pelo usuário int Menu() { int op; // mensagem ao usuário e entrada de dados

Página 114


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

printf("Digite 1 para cadastramento de distancias\nDigite 2 para consulta de distancias\nDigite 3 para sair do programa\n:"); scanf("%d", &op); return op; } // fim do módulo Menu

//Módulo procedimento que recebe a tabela de distâncias e insere as distâncias informadas pelo usuário void Cadastro(float distancias[5][5]) { int i, j; for (i = 0; i < 5; i++) { for (j = 0; j <= i; j++) { if (i == j) { distancias[i][j]= 0; } else { printf("Digite a distancia da cidade %d ate %d: ", j + 1, i + 1); scanf("%f", &distancias[i][j]); distancias[j][i] = distancias[i][j]; } } }

Página 115


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

} // Módulo função parametrizado, que recebe como parâmetro a tabela de distância e devolve a distância encontrada float Consulta(float distancias[5][5]) { int origem, destino; do { printf("Digite o número da cidade de origem: "); scanf("%d", &origem); if (origem <= 0 || origem > 5) { printf("Número inválido!\n"); } } while (origem <= 0 || origem > 5); do { printf("Digite o número da cidade de destino: "); scanf("%d", &destino); if (destino <= 0 || destino > 5) { printf("Número inválido!\n"); } } while (destino <= 0 || destino > 5);

Página 116


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

return distancias[origem-1][destino-1]; } // módulo principal main() { // declaração de variáveis e/ou constantes int op; float distancias[5][5]; float distancia; do { op = Menu(); switch (op) { case 1 : Cadastro(&distancias); break; case 2 : distancia = Consulta(distancias); printf("A distância é %f\n", distancia); break; case 3 : printf("Saindo do programa \n");

Página 117


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

break; default : printf ("opção inválida, tente novamente \n"); // saída de resultados } // fim do switch } while (op != 3);// fim do do } // fim do main

48) Solução em Java import javax.swing.*; public class Distancias { // módulo função Menu que retorna a opção digitada pelo usuário static int Menu() { int op; // mensagem ao usuário e entrada de dados op = Integer.parseInt(JOptionPane.showInputDialog("Digite 1 para cadastramento de distancias\nDigite 2 para consulta de distancias\nDigite 3 para sair do programa")); return op; } // fim do módulo Menu //Módulo função que devolve a tabela de distâncias informadas pelo usuário static double[][] Cadastro()

Página 118


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

{ int i, j; double distancias[][] = new double[5][5]; for (i = 0; i < 5; i++) { for (j = 0; j <= i; j++) { if (i == j) { distancias[i][j]= 0; } else { distancias[i][j]

=

Double.parseDouble(JOptionPane.showInputDialog("Digite a distancia da cidade " + (j + 1) + " ate " + (i + 1) + ":")); distancias[j][i] = distancias[i][j]; } } } return distancias; } // Módulo função parametrizado, que recebe como parâmetro a tabela de distância e devolve a distância encontrada static double Consulta(double distancias[][]) {

Página 119


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

int origem, destino; do { origem = Integer.parseInt(JOptionPane.showInputDialog("Digite o número da cidade de origem")); if (origem <= 0 || origem > 5) { System.out.println("Número inválido!"); } } while (origem <= 0 || origem > 5); do { destino = Integer.parseInt(JOptionPane.showInputDialog("Digite o número da cidade de destino")); if (destino <= 0 || destino > 5) { System.out.println("Número inválido!"); } } while (destino <= 0 || destino > 5); return distancias[origem-1][destino-1]; }

public static void main (String args [ ])

Página 120


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

{ // declaração de variáveis e/ou constantes int op; double distancias[][] = new double[5][5]; double distancia; do { op = Menu(); switch (op) { case 1 : distancias = Cadastro(); break; case 2 : distancia = Consulta(distancias); System.out.println("A distância é " + distancia); break; case 3 : System.out.println("Saindo do programa!"); System.exit(0); break; default : System.out.println ("opção inválida, tente novamente"); } // fim do switch } while (op != 3); } // fim do void main } //fim da classe

Página 121


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

GABARITO | QUESTÃO 49

49) Solução em Java import javax.swing.*; public class Acesso { // módulo função Menu que retorna a opção digitada pelo usuário static int Menu() { int op; // mensagem ao usuário e entrada de dados op = Integer.parseInt(JOptionPane.showInputDialog("Digite 1 para cadastramento dos usuários\nDigite 2 para teste de acesso\nDigite 3 para sair do programa")); return op; } // fim do módulo Menu //Módulo função que devolve a tabela de usuários e senhas static String[][] Cadastro() { int i; String usuarios[][] = new String[5][2]; for (i = 0; i < 5; i++) {

Página 122


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

usuarios[i][0] = JOptionPane.showInputDialog("Digite o nome do usuário " + (i + 1) + ":"); usuarios[i][1] = JOptionPane.showInputDialog("Digite a senha do usuário " + (i + 1) + ":"); } return usuarios; } // Módulo função parametrizado, que recebe como parâmetro a tabela de usuários e pede um usuário e senha para teste de acesso static void TestarAcesso(String usuarios[][]) { String usuarioTeste, senhaTeste; int i; usuarioTeste

=

JOptionPane.showInputDialog("Digite

o

nome

do

senha

de

usuário:"); senhaTeste

=

JOptionPane.showInputDialog("Digite

a

acesso:"); for (i = 0; i < 5; i++) { if

(usuarioTeste.equals(usuarios[i][0])

&&

senhaTeste.equals(usuarios[i][1])) { System.out.println("Acesso liberado!"); return; }

Página 123


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

} System.out.println("Acesso negado!"); }

public static void main (String args [ ]) { // declaração de variáveis e/ou constantes int op; String usuarios[][] = new String[5][2]; do { op = Menu(); switch (op) { case 1 : usuarios = Cadastro(); break; case 2 : TestarAcesso(usuarios); break; case 3 : System.out.println("Saindo do programa!"); System.exit(0); break; default : System.out.println ("opção inválida, tente novamente");

Página 124


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

} // fim do switch } while (op != 3); } // fim do void main } //fim da classe

GABARITO | QUESTÃO 50

50) Solução em Java import javax.swing.*; public class ValorDePi {

public static void main (String args [ ]) { int n, i; double pi = 0.0; do { n

=

Integer.parseInt(JOptionPane.showInputDialog("Digite

o

número de termos:")); } while (n < 1); for (i = 0; i < n; i++) {

Página 125


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

if (i % 2 == 0) { pi = pi + 4.0 / (2.0 * i + 1.0); } else { pi = pi - 4.0 / (2.0 * i + 1.0); } } System.out.println(pi); } // fim do void main } //fim da classe

50) Solução em C #include <stdio.h> // módulo principal main() { // declaração de variáveis e/ou constantes int n, i; float pi = 0.0; do {

Página 126


LÓGICA DA PROGRAMAÇÃO

ATIVIDADES COMPLEMENTARES _____________________________________________________________________

printf("Digite o número de termos: "); scanf("%d", &n); } while (n < 1); for (i = 0; i < n; i++) { if (i % 2 == 0) { pi = pi + 4.0 / (2.0 * i + 1.0); } else { pi = pi - 4.0 / (2.0 * i + 1.0); } } printf("%f", pi); } // fim do main

Página 127



Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.