Algoritmos
Algoritmos
de computador ou processoAlgoritmo
Fluxograma esquemático
Observe
que
pode
Considerando
apresenta
Sobre
(in Dicionário ser
as assertivas
algoritmo,
uma
dadefinido
as afirmativas
Priberam
a
sequência
seguir
marqueacerca
aade
seg
opç
op
Língua Portu
a execução de uma tarefa
http://www.priberam.pt/dlpo/fluxograma [consultado
I - O fluxograma
N2) obtidas pelo aluno João. Selecione a opção
II - Oque
em 13-08-2014].
utiliza diagramas
I. Os mesmos são a representação grá
pseudocódigo
apresenta os
é um
itens
Abaix
recurso
de ent
de representação de alg
o algoritmo;
III - A
II. Para linguagem de
desenhá-los, programação
é preciso adotar
Linguagem Natural, Lingua
partir dos algoritmos.
1. usarmos N para
III. Podemos
Existem programas
afirmar que: represe
que permitem
representar linguagem
Assinale a seguir a alternativa que ind
Apenas a alternativa I é CORRETA
As alternativas II e III são INCORRETAS
pseudocódigos, pode-se
Todas as alternativas são CORRETAS representação de algoritmo
Nenhuma das opções anteriores
( ) Sua simbologia é am
As alternativas I e III são CORRETAS
aplicação não se re
computacionais.
( ) Sua simbologia e sintax
a sintaxe da maioria das lin
2.
( ) A grande ambiguidade
É uma etapa posterior à programação da solução de um problema. termos é uma restrição
É uma forma de ensinar o computador.
É um hardware especifico para resolver problemas.
computacionais.
É uma linguagem de programação para computadores. Marque a alternativa que
É a solução teórica, passo a passo, de um problema. existente entre as afirmaçõ
algoritmos.
3.
II e III.
I e III
I e II.
I, II e III.
4.
N, G, P
G, P, N
N, P, G
G, N, P
P, N, G
5. AAAssinale
implementação
representação
a alternativa
concreta
gráficacorreta
dos
dealgorit
umrela
a
chamada
é chamadade:de:
Aprovado
Reprovado
Média
Fim
N1 e N2
6.
7.
Um programa é um algoritmo codificado em uma linguagem de gráfica (ex: fluxograma), isto é, um conjunto de
instruções que representam tarefas que serão apenas interpretadas por um computador.
Um programa é um algoritmo escrito em linguagem natural, mas sem ambiguidades. Ou seja, é um conjunto de
comandos que representam tarefas que serão compreendidas por um computador.
8.
1.
Algoritmo
Diagrama
Pseudocódigo
Observe o fluxograma
AAnalise
implementação
a
Sobre
Sobre
seguir
as
fluxograma,
algoritmo,
afirmativas
e assinale
concreta
marque
a
assina
aalternativa
seguir
deaum
aopçã
em
opç
a
Linguagem de Programação chamada de:
I - O fluxograma utiliza diagramas
Fluxograma
II - O pseudocódigo é um recurso
o algoritmo;
III - A linguagem de programação
partir dos algoritmos.
3.
Poderiam ser retirados do fluxograma os símbolos de terminação que delimitam, respectivamente, o início e o fim
da solução.
A simbologia empregada no recebimento de dados está equivocada e foi trocada por aquela que representa
exibição de informações.
O fluxograma é responsável por calcular a idade de um indivíduo a partir de seu ano de nascimento e do ano em
que estamos.
O fluxograma está incompleto e errado, pois não exibe mensagens antes que a leitura de dados seja realizada.
No cálculo da idade, inverteram-se as posições dos anos e, por isso, a idade resultante será sempre negativa.
4.
Programa
Linguagem de Máquina
Linguagem de alto nível
Compilador
7.
2.
C++, Java, C#
C++, C# e fluxograma
3.
É igual ao fluxograma
O português estruturado é uma simplificação da nossa linguagem natural, na qual usamos frases simples e
estruturas que possuem um significado muito bem definido.
1.
5.
6.
Os algoritmos correspondem, estritamente, aos conjuntos de dados e informações que são tratados em um determinado
processamento.
As linguagens de programação possibilitam a codificação de um determinado algoritmo, de acordo com um conjunto de regras
específico.
As linguagens de programação possuem um conjunto de regras flexíveis para a representação dos comandos de um programa.
7.
Apenas pseudolinguagem
1.
Para se escrever um programa não precisa se conhecer lógica de programação, pois o fundamental é a linguagem
de programação.
Um programa é um algoritmo codificado em uma linguagem de programação.
Um programa é um algoritmo codificado em uma pseudolinguagem.
Um programa é um algoritmo codificado em linguagem natural.
Programa e fluxograma são sinônimos.
Sobre
Sobre
o FLUXOGRAMA
algoritmo, marque
abaixoapode
opç
2.
3.
Apresenta na sua lógica a estrutura básica REPETIÇÃO
Apresenta na sua lógica as três estruturas básicas de programação
Apresenta na sua lógica a estrutura básica DECISÃO
Apresenta na sua lógica as estruturas básicas de SEQUÊNCIA e REPETIÇÃO
Apresenta na sua lógica as estruturas de DECISÃO e REPETIÇÃO
AULA 2
1. Em C++ existem quatro tipos básicos, isto é , tipos básicos de dados que podem ser utilizados. Qual é o tipo definido
da seguinte maneira: "Qualquer número real, negativo, nulo ou positivo."
bool
real
char
float
int
2. Um restaurante self-service vende comida por peso e cobra R$ 34,90 por quilo consumido. Sabendo que o preço a ser
pago pelo cliente é calculado a partir do peso de seu prato multiplicado pelo valor do quilo, o trecho de declaração de
variáveis em C++ que seria necessário em um programa capaz de informar ao cliente o valor a pagar é:
4. Os comentários são recursos que podem ser utilizados pelos programadores para:
portugol
programa
principal
algoritmo
6. Assinale a opção que apresenta somente nomes válidos para variáveis em C++.
5. Em C++ existem quatro tipos básicos, isto é , tipos básicos de dados que podem ser utilizados. Qual é o tipo definido
da seguinte maneira: "Qualquer número real, negativo, nulo ou positivo."
real
bool
char
int
float
8. Um menino resolveu abrir o cofrinho de economias que contém o que guardou durante um ano. São moedas de R$
0,25, R$ 0,50 e R$ 1,00. Imaginando que você precisa escrever um programa em C++ que, a partir da quantidade de
cada moeda, mostre a quantia total economizada, como seria a declaração de variáveis necessárias a este programa?
3. Selecione, entre as alternativas, a opção correta, tendo em vista a frase: Necessita de espaço na memória e define o
tipo de dado a ser armazenado.
Comando Enquanto-Faça
atribuição
Comando PARA
Variável
Estrutura de Seleção
enquanto
programa
se
II. É case sentive, ou seja, faz distinção entre letras maiúsculas e minúsculas;
III. Permite que os identificadores de variáveis iniciem pelo caractere sublinhado ("_");
IV. É fracamente tipada; o que permite que uma variável seja declarada sem que seu tipo seja definido.
I e II são verdadeiras.
I e IV são verdadeiras.
Dizemos que uma linguagem é de alto nível quando conseguimos ler e escrever usando palavras conhecidas
por nós.
O C++ não é uma linguagem de alto nível, pois usa palavras em Inglês que nem todos entendem.
Dizemos que uma linguagem é de alto nível quando usa linguagem binária.
8. Faz parte do desenvolvimento de uma algoritmo declarar as variáveis que armazenarão dados a ser manipulados pelo
algoritmo. De acordo com as regras para criação dos nomes para as variáveis, assinale a alternativa que possui um
exemplo de nome INCORRETO:
num1
nome_aluno
salariofinal
nota2
cad1- id
2. No C++, é possível declarar variáveis e constantes. Uma constante é um espaço da memória reservado a um valor
que não se altera ao longo da execução de um programa. Imaginando que você precise de uma constante para
armazenar o valor de PI (3,14), como seria feita sua declaração em C++?
float PI=3.14;
3. Quanto à linguagem de programação, marque a opção que determina o processo que efetua integralmente a tradução
de um programa fonte para o código de máquina, podendo assim ser executado diretamente.
Linkedição
Determinação
Orientação
Compilação
Evolução
uma variável ocupa um espaço em memória e nunca se usa um tipo de dados ao declará-la.
uma variável ocupa um espaço em memória e devemos usar, normalmente, um tipo de dados ao declará-la.
uma variável ocupa um espaço em memória e devemos usar, normalmente, um tipo de dados ao declará-la.
uma variável ocupa um espaço em memória e nunca se usa um tipo de dados ao declará-la.
AULA 3
1. Analise o trecho de código abaixo e depois marque a opção correta para o que se pede:
int x, y,a , b;
float z;
a = 14;
b = 3;
x = a / b;
y = a % b;
z = y / x;
14
4.66666
2. Os operadores lógicos servem para combinar resultados de expressões, retornando se o resultado final é verdadeiro
ou falso. Marque a alternativa que contém o operador lógico que deve ser utilizado quando as duas proposições
lógicas necessitam ser verdadeiras para que o resultado da combinação seja verdadeiro.
a = 2, b = 5 e c = 4
((b = 2) == a)
pow(c,a) > b * c
(b % a) == 0
a == c
(b + 2) > (a * c)
5. Indique qual alternativa calcula corretamente a média aritmética das notas AV1 e AV2 de uma determinada disciplina
6. Sendo X = 1, Y = 2 e Z = 5, assinale a alternativa correta, dentre as relacionadas abaixo, que corresponde aos
questionamentos realizados em relação à expressão: X * X + Y > Z.
Questionamentos:
- Esta expressão é VERDADEIRA ou FALSA?
- O valor do termo X * X + Y é igual a qual valor ?
A && B || C || !D
A || B && C && !D
A B CA ||!A
B ! C !B&&D
&& C B && C && !A A || B && C && !A
V V V F V F
V V F F F F
V F V F F F
V F F F F F
F V V V V V
F V F V F F
F F V V F F
F F F V F F
A sequência de valores que preenche a última coluna, de cima para baixo, é:
8.
V, V, V, V, V, F, F, F
V, V, F, F, V, V, F, F
F, F, F, F, F, V, V, V
F, V, F, V, V, F, V, F
V, F, V, F, V, F, V, F
=, > e ||
&&, >= e ||
+, - e *
&&, || e ~
&&, || e !
+, - e *
=, > e ?
!, > e >=
Observe a tabela da verdade para a expressão A && B || B || A.
6.
F-V-V-F
V-V-V-V
V-V-V-F
V-F-F-F
F-F-V-F
7. Se você desejar escrever a expressão A|| B && C && !D em um algoritmo no Portugol Studio, como a mesma
ficaria?
A e B ou C ou nao D
A ou B e C e D
A ou B e C e nao D
A e B ou C nao D
A ou B e C e não D
A && B || C || !D
A || B ! C ! &&D
A || B && C && !D
4. Qual das alternativas apresenta a expressão que seja capaz de avaliar se uma variável do tipo inteiro,
denominada NUMERO ,é ímpar e negativa.
(NUMERO>0) || (NUMERO%2==0)
(NUMERO<0) || (NUMERO%2!=0)
(NUMERO>0) !! (NUMERO%2==0)
(NUMERO<0) && (NUMERO%2!=0)
AULA 4
1. No C++, para que os acentos sejam exibidos corretamente durante a execução de um programa, é preciso que sejam
utilizadas a biblioteca _______________ e a função _______________.
locale - setlocale
iostream - setlocale
iostream - ptb
locale - ptb
math - math.round
2. Marque a opção correta para a declaração das variáveis conforme o trecho de código abaixo, que calcula a média de 3
notas de 1 aluno:
scanf("%f", nota1);
scanf("%f", nota2);
scanf("%f", nota3);
media=(nota1+nota2+nota3)/3;
3. Marque a opção correta quanto ao uso dos comandos de entrada e saída em C++
1 programa
2 {
4 funcao inicio()
5 {
8 leia(valComb)
10 leia(qtdeDin)
11 qtdeLitros=qtdeDin/valComb
13 }
14 }
Sabendo que o valor do litro do combustível é R$ 3.90 e que você dispõe de R$ 200.00 para abastecer, qual
mensagem seria exibida pelo computador na linha 12?
Para entrada de dados usamos cin com >> e para saída de dados
usamos cout com <<
Para entrada de dados usamos cout e para saída de dados usamos
cin
Para entrada de dados usamos read e para saída de dados usamos
write
Para entrada de dados usamos cout com << e para saída de dados
usamos cin com >>
Para entrada de dados usamos cin com << e para saída de dados
usamos cout com >>
F-V-F
V-F-F
F-F-F
V-V-F
V-V-V
8. Imagine que você viajou para os Estados Unidos e está muito confuso com a forma como os americanos medem a
temperatura, que é em Fahrenheit. Para ficar com menos dúvidas, você decide criar um algoritmo que, dada uma
temperatura em Fahrenheit, exiba seu equivalente em graus Celsius. Com base na sintaxe do Portugol Studio, qual
das alternativas a seguir apresenta o trecho da solução a ser escrito no lugar das interrogações a seguir?
programa {
????????
}
tempC=(tempF-32)/1.8
leia(tempF)
tempC=(tempF-32)/1.8
leia(tempF)
tempC=(tempF-32)/1.8
leia(tempF)
tempC=(tempF-32)/1.8
real tempF, tempC
leia(tempF)
AULA 5
1. Tendo em mente os conceitos dos comandos básicos de decisão do C++, analise o trecho de programa abaixo e
assinale a alternativa que corresponda a saída na tela:
2
-1
22
11
2. Você deseja analisar se um número inteiro qualquer fornecido pelo usuário é par e positivo ou par e negativo. Com
base na sintaxe do Portugol Studio, o trecho que realiza corretamente o teste para descobrir as características do
número é:
leia(num)
resto=num%2
se (resto==0 ou num>0)
leia(num)
resto=num^2
se (resto==1 e num>1)
leia(num)
resto=num%2
se (resto==0 e num>0)
leia(num)
resto=num/2
se (resto==0 !! num>0)
leia(num)
resto=num%2
se (resto==0 e num<0)
3. Analise o programa abaixo e selecione a alternativa que contenha a condição correta para que o número 27 seja mostrado na tela.
#include
using namespace std;
int main()
{
int N1, N2;
N1= 27;
N2= 54;
if ( ______________ )
{
cout<< N2;
}
else
{
cout<< N1;
}
return 0;
}
N1 > N2 || N2 < 50
N2 > N1 || N1 > 50
N2 == N1 || N2 > 20
4. Analise o trecho abaixo que um aluno desenvolveu na linguagem C++ e escolha a opção onde estão os valores que
aprecem na tela.
int x = 235, y = 138, z = 177, m;
m = z;
if( x < m) m = x;
if( y < m) m = y;
cout << m << " " << x << " " << y ;
5. Analise o trecho abaixo que um aluno desenvolveu na linguagem C++ e escolha a opção onde estão os valores que
aprecem na tela.
int x = 13, y = 4, z;
if( x > y ) { z = x; x = y; y = z; }
cout << z << " " << x << " " << y ;
13 4 13
13 13 4
4 13 13
0 13 4
0 4 13
int x, y, z;
x = 10;
y = 6;
z = x/y;
if (z > 0)
z = x % y;
1 4
1 1
Ocorrerá erro, pois o trecho não compila.
4 4
4 1
7. Assinale a opção correta. O que será impresso na tela, respectivamente, após duas execuções seguidas,
sendo que na 1ª. execução o valor de entrada é 7 e na 2ª. execução o valor de entrada é 8. Para isso, considere
o seguinte trecho em C++.
int num;
9 8 10 9
9 40
9 6 10 9
8 10 40
9 8 10 40
8. Quando estudamos sobre a estrutura do se ... entao...senao, sempre nos é dito que, quando
tivermos duas possibilidades de respostas, devemos escolher a estrutura do se composto ao invés
de usar duas estruturas do se simples.
Observe as afirmativas abaixo e, depois, escolha a resposta que respalda o uso do se
composto pelo que foi dito acima ao invés do se simples.
III Maior eficiência somente porque o código fica mais legível, visto que o resultado final é o mesmo
IV Somente uma escolha do desenvolvedor, visto que o resultado o resultado final é o mesmo
A II E IV estão corretas
1. Em linguagem de programação, existe uma estrutura que é empregada em situações em que é preciso tomar uma
decisão a respeito de determinado resultado que será obtido em duas situações diversas. Marque a opção que
determina a estrutura de controle citada:
Matricial
Vetorial
Repetição
Decisão
Recursiva
int x = 10, y = 3, z, k;
y = x + y - 1;
z = x/y;
k = y % x;
if (k == 0)
cout << "x = " << x << " y = " << y << " z = " << z << " k = " << k;
else
cout << x + 1 << " " << y - 1 << " " << z + 2 << " " << k - 2;
x= 11 y = 11 z = 2 k = 0
x = 10 y = 12 z = 0.833 k = 0
x = 10 y = 12 z = 0 k = 0
10 12 2 0
11 11 2 0
4. Analise o trecho abaixo que um aluno desenvolveu na linguagem C++ e escolha a opção onde estão os valores que
aprecem na tela.
int x = 4, y = 14, t;
float z;
if( x < y ) { t=x; x=y; y=t;}
z = (x % y) / y;
cout << x << " " << y << " " << z ;
0.5 4 14
4 14 0.5
14 4 0
4 14 0
14 4 0.5
5. Considere um programa em C++ que recebe um número inteiro qualquer e informe se ele é par ou ímpar. a
estrutura seletiva adequada para teste do número é:
if (resto==0)
else
case
else
elseif not
6. Uma pessoa deseja verificar se o total gasto durante o mês ultrapassa o valor de seu salário. Imaginando que você
tenha um algoritmo no qual o salário esteja armazenado na variável SAL e o total de gastos esteja armazenado na
variável GASTOS, como deve ser escrita a estrutura seletiva responsável por testar o que você deseja descobrir?
se (GASTOS>SAL)
7. Considere um programa em C++ que leia os valores A, B, C e informe se a soma dos dois primeiros termos é maior
do que o terceiro. A estrutura seletiva adequada para esse teste é:
if ((A+B)>C)
while ((A+B)>C)
switch ((A+B)>C)
int num;
if (num > 0)
{
num++;
cout << num << " ";
}
cout << num + 1 << " ";
if (num < 0)
{
num--;
cout << num << " ";
}
else
cout << num * 10 ;
11 110 1 10
11 110 1 0
11 12 110
11 110 1 0
11 12 110 1 0
3. Você deseja analisar se um número inteiro qualquer fornecido pelo usuário é par e positivo ou par e negativo. Com
base na sintaxe do Portugol Studio, o trecho que realiza corretamente o teste para descobrir as características do
número é:
leia(num)
resto=num^2
se (resto==1 e num>1)
leia(num)
resto=num/2
se (resto==0 !! num>0)
leia(num)
resto=num%2
se (resto==0 ou num>0)
leia(num)
resto=num%2
se (resto==0 e num<0)
leia(num)
resto=num%2
se (resto==0 e num>0)
6. O programa abaixo recebeu o valor 2 como entrada. Analise o programa abaixo e assinale a o valor que será impresso.
#include
using namespace std;
int main()
{
int a, b;
cout<< "\n Digite um valor: ";
cin>> a;
if (a <= 2)
b = a + 2 * 30 / 10;
else
b = a - 2 * 30 /10;
cout<< b;
system("pause");
}
-4
12
7. Analise o trecho abaixo que um aluno desenvolveu na linguagem C++ e escolha a opção onde estão os valores que
aprecem na tela.
int x = 235, y = 138, z = 177, m;
m = z;
if( x < m) m = x;
if( y < m) m = y;
cout << m << " " << x << " " << y ;
3. Considere um programa em C++ que leia os valores A, B, C e informe se a soma dos dois primeiros termos é maior
do que o terceiro. A estrutura seletiva adequada para esse teste é:
for ((A+B)>C)
while ((A+B)>C)
if ((A+B)>C)
5. Para satisfazer a regra de que para fazer AV3 o aluno deve ter nota maior ou igual a 4 em pelo menos uma das outras
duas Avaliacoes, qual seria a sentença correta
6. Você deseja analisar se um número inteiro qualquer fornecido pelo usuário é par e positivo ou par e negativo. Com
base na sintaxe do Portugol Studio, o trecho que realiza corretamente o teste para descobrir as características do
número é:
leia(num)
resto=num/2
se (resto==0 !! num>0)
leia(num)
resto=num%2
se (resto==0 ou num>0)
leia(num)
resto=num%2
se (resto==0 e num<0)
leia(num)
resto=num^2
se (resto==1 e num>1)
leia(num)
resto=num%2
se (resto==0 e num>0)
int x = 10, y = 3, z, k;
y = x + y - 1;
z = x/y;
k = y % x;
if ( k != 0)
cout << "x = " << x << " y = " << y << " z = " << z << " k = " << k << "\n";
10 12 0.833 1.2
10 12 0 2
x = 10 y = 12 z = 0.833 k = 1.2
x= 10 y = 12 z = 0 k = 2