ALGORITMOS E ESTRUTURA DE DADOS


Observe o trecho a seguir e escolha a alternativa que melhor define a execução do programa.

algoritmo "exemp1"
var
      num : real
      x : inteiro
inicio
      x := 0
      enquanto (x < 6) faca
            num := Randi(60)
            escreval (num)
            x := x + 1
      fimenquanto
fimalgoritmo


Realiza o sorteio aleatório de 6 números entre 0 e 60 por 6 vezes


Realiza o sorteio aleatório de 6 números entre 0 e 60


Realiza o sorteio aleatório de 60 números, 6 vezes


Realiza o sorteio aleatório de 60 números


Realiza o sorteio aleatório de 6 números, 60 vezes

Assinale a alternativa correta correspondente ao comando utilizado em algoritmos para armazenar informações em uma variável com nome "idade"


mostre (idade)


leia (idade)


se (idade)


leia "idade"


print (idade)

As estruturas de repetição nos permite repetir parte de um algoritmo até que uma condição seja satisfeita. Quais são as estruturas de repetição em algoritmos ?


Caso, Repita, SE, Enquanto


Enquanto, Caso, Repita, Se, Para


Enquanto, Se, Caso


Enquanto, Para, Repita


Se, então, Senão, Fimse

Observe as duas estruturas de repetição à seguir e assinale a alternativa que demonstra a diferença entre elas.

repita
       escreva (x)
       x <- x + 1
ate x = 50

---------------------------------

enquanto (x<=50) faca

        escreva (x)

        x <- x + 1

fim enquanto


Quando utilizamos a estrutura "enquanto" o bloco de instruções será executado ao menos uma vez e só depois será testada a condição, já a estrutura "repita" testa primeiro para depois realizar o bloco de instruções
Na estrutura "enquanto" não era necessário utilizar a instrução x <- x + 1, já na estrutura "repita" essa instrução é imprescindível senão entraremos em um loop infinito.
Não existem diferenças entre os dois blocos de instrução e nem na estrutura de repetição
Quando utilizamos a estrutura "repita" o bloco de instruções será executado ao menos uma vez e só depois será testada a condição, já a estrutura "enquanto" testa primeiro para depois realizar o bloco de instruções
Na estrutura "repita" não era necessário utilizar a instrução x <- x + 1, já na estrutura enquanto essa instrução é imprescindível senão entraremos em um loop infinito.

Avalie as afirmativas e assinale a alternativa correta:

I - A estrutura de repetição "enquanto" não pode ser utilizada em conjunto com a estrutura "repita", ou seja, uma dentro da outra, analisando condições diferentes.
II - A estrutura de repetição "enquanto" pode ser utilizada em conjunto com a estrutura "repita", ou seja, uma dentro da outra, analisando condições diferentes.
III - A estrutura de repetição "para" só pode ser utilizada se em seguida o algoritmo tiver uma estrutura "Se" com uma condição para ser avaliada.
IV - A estrutura de repetição "repita" só pode ser utilizada se em seguida o algoritmo tiver uma estrutura "escolha-caso" com uma condição para ser avaliada.


Somente as alternativas II e  IV estão corretas


Somente a alternativa II está correta


Somente as alternativas I e III estão corretas


Somente as alternativas I, III e  IV estão corretas


Somente as alternativas III e  IV estão corretas

Observe o código abaixo e assinale a alternativa que contém a linha que pode ser substituída no código de forma que possa contar quantas vezes o laço se repete.

x <- 90000
y <- 200000

enquanto (x < y) faca
     x <- x + ((x * 3)/100)
     y <- y + ((y * 1.5)/100)
     ??????????????????
fimenquanto


y <- y + 1


c <- c + 1


c <- x + y


x <- x + 1


c <- c + x

Em uma competição de natação os atletas são separados conforme a faixa etária, sendo que, os atletas que estão entre 12 e 18 anos são da categoria "Juvenil". Assinale a alternativa abaixo que contém a estrutura condicional correta para selecionar tais atletas.


se (idade >=12 e idade <= 18) então


se (idade >=12) ou (idade <= 18) então


se (idade >=12) e (idade <= 18) então


se (idade =12) e (idade = 18) então


se (idade <=12) e (idade >= 18) então

Observe o algoritmo à seguir, encontre os seus erros e em seguida responda, após corrigir o algoritmo a tarefa que o mesmo realiza é:

algoritmo "numeros"

var

   a, b : inteiro

   temp : real

   x : vetor[1..10] de real

inicio

para a de 1 ate 0 faca

   escreva ("Digite o", a, "º numero: ")

   leia(x[a])

fimpara

para a de 1 ate 10 

   para b de 1 ate 9 faca

      se x[b] > x[b+1] entao

         temp <- x[b]

         x[b] <- x[b+1]

         x[b+1] <- temp

      fimse

   fimpara

fimpara

para a de 1 ate 10 faca

   escreval(a, "º - ", x[a])

fimpara

fimalgoritmo


Ordena de forma decrescente os 10 números informados pelo usuário


Ordena de forma crescente os 10 números informados pelo usuário


Ordena de forma decrescente os 20 números informados pelo usuário


Inverte a ordem em que os números foram digitados pelo usuário


Ordena de forma crescente os 20 números informados pelo usuário

Como sabemos, às propriedades dos triângulos são utilizadas para determinar os tipos existentes: equilátero, quando possui os três lados com medidas iguais - isósceles, quando possui dois lados com medidas iguais e finalmente, escaleno  quando possui os três lados com medidas diferentes. Baseado nestas informações e também sobre o que foi abordado sobre estruturas condicionais, observe o pseudocódigo abaixo, e depois responda a questão.


Algoritmo propriedades do triângulo
Var
    x,y,z:inteiro
Inicio
     escreva (Informe a medida do primeiro lado: )
     leia(x)
     escreva (Informe a medida do segundo lado: )
     leia(y)
     escreva (Informe a medida do terceiro lado: )
    leia(z)
    se((x<>0) e (y<>0) e (z<>0)) entao
          se((x+y>z) e (x+z>y) e (y+z>x)) entao
               se ((x<>y) e (x<>z) e (y<>z)) entao
                          escreva(O triângulo é escaleno)
               senao
                          se((x=y) e (y=z)) entao
                                     escreva(O triângulo é equilátero)
                          senao
                                     escreva(O triângulo é isóceles)
                         fimse
               fimse
     senao
               escreva(Os valores não permitem formar um triângulo)
     fimse
fimse
Fimalgoritmo

I - A estrutura condicional apresentada pelo algoritmo é do tipo encadeada.
II - A linha 12, representa um teste de condição para verificar se os valores fornecidos permitem a criação de um triângulo
III - Para o triângulo ser considerado escaleno, teremos que inserir na linha 13 a condição  se ((x<>y) e (x<>z) e (y<>z)).
IV - Para o triângulo ser considerado equilátero, teremos que inserir na linha 16 a condição: se((x=y) e (y=z))

É CORRETO apenas o que se afirma em:

Apenas as sentenças II e IV são verdadeiras.
Apenas a sentença IV é verdadeira.
Todas as sentenças são verdadeiras.
Apenas as sentenças I e III são verdadeiras.
Apenas a sentença III é verdadeira.

Para encontrar a raiz quadrada de um número podemos utilizar qual função abaixo ?


Quad(num)


Quadrada(num)


Rquad(num)


exp2(num)


RaizQ(num)