Algoritmo
Considerando que uma nota válida deve possuir valores entre 0 e 10 (inclusive), a lacuna que corresponde à condição do comando SE é corretamente preenchida por
a) ( ) n1 >= 0 OU n1 <=10 OU n2 >= 0 OU n2 <=10
b) ( ) (n1 >= 0 E n1 <=10) OU (n2 >= 0 E n2 <=10) c) ( ) (n1 >= 0 OU n1 <=10) E (n2 >= 0 OU n2 <=10) d) ( ) n1 >= 0 E n1 <=10 E n2 >= 0 E n2 <=10 e) ( ) n1 > 0 E n1 <10 E n2 > 0 E n2 <10
Resposta: D
2) Observe o algoritmo abaixo, referente a um programa de computador, onde / representa divisão entre inteiros.
algoritmo prog; var array[1..8] of inteiros : tab; lógica : achou; inteiro : D, m, ini, fim, centro; procedimento PROC11; início para m de 1 até 8 faça ler(tab[m]); fim_do_procedimento; procedimento PROC22; início ler(D); achou=false; ini = 1;fim = 8;centro = (ini+fim) / 2; enquanto (D < > tab[centro]) e (ini < > fim) faça início se D > tab[centro] então ini = centro+1 senão fim = centro; centro = (ini + fim) / 2; fim_do_procedimento; se D = tab[centro] então achou = VERDADEIRO senão achou = FALSO; se achou então escreva(D,' encontra-se na posição ',centro) senão escreva(D,' não se encontra na tabela...'); fim_do_procedimento; início PROC11; PROC22; fim_do_algoritmo.
a)( ) combinacional
b)( ) segmentada
c)( ) particionada
d)( ) sequencial
e)( ) binária
Resposta: E
3) O pseudocódigo abaixo representa um algoritmo que efetua a multiplicação de dois inteiros quaisquer.
algoritmo "exercício 1c" var n1, n2: inteiro inicio escreva ("Digite o multiplicando e a seguir") escreva (" o multiplicador (ambos inteiros): ") leia (n1, n2) escreva (n1, "*",