Faça um programa e um algoritmo que solicite ao usuário informar um conjunto de 4 valores reais nomeados i, a, b, c. O i é um valor inteiro e positivo que indica a forma como os números devem ser mostrados na tela. Os valores a, b, c são valores reais que devem ser mostrados na tela na seguinte ordem

Developer Giovani

Oi turma, tudo bem com vocês? Vamos a um interessante exercício para aprimorar nossas habilidades com os testes condicionais alinhados (Se, Senão e Se). Este exercício também terá um menu simples. Segue abaixo o texto do problema:

 

Desenvolva um programa que solicite ao usuário informar um conjunto de 4 valores reais nomeados i, a, b, c.

O i é um valor inteiro e positivo que indica a forma como os números devem ser mostrados na tela.

Os valores a, b, c são valores reais que devem ser mostrados na tela na seguinte ordem:

  • Se i=1 mostrar os 3 valores a, b, c em ordem crescente;
  • Se i=2 mostrar os 3 valores a, b, c em ordem decrescente;
  • Se i=3 mostrar os 3 valores de forma que o maior valor entre a, b, c fique entre os outros dois.

Dica para resolver o exercício:

Independente da ordem que os valores devem ser mostrados na tela, crie três variáveis auxiliares para armazenar o maior, o menor e o valor intermediário. Depois que estas variáveis já possuírem os valores corretos, basta escrever os valores de acordo com a ordem solicitada pelo usuário.

 

Resposta em Portugol com Portugol Studio

/*
 * 
 * 	Criado pelo Professor Giovani Da Cruz
 * 	https://giovanidacruz.com.br
 * 
 */

programa
{
    
    funcao inicio()
    {
        	inteiro i
        	real a, b, c
        	real menor, meio, maior
    
        escreva("Informe o valor de i: ")
        	leia(i)
    
        	escreva("Informe o valor de a: ")
        	leia(a)
    
        	escreva("Informe o valor de b: ")
        	leia(b)
        
        escreva("Informe o valor de c: ")
        	leia(c)
    
        	// Ordenar os valores em ordem crescente
        	se (a <= b e a <= c) {
            menor = a
            se (b <= c) {
                meio = b
                maior = c
            } senao {
                meio = c
                maior = b
            }
        } senao se (b <= a e b <= c) {
            menor = b
            se (a <= c) {
                meio = a
                maior = c
            } senao {
                meio = c
                maior = a
            }
        } senao {
            menor = c
            se (a <= b) {
                meio = a
                maior = b
            } senao {
                meio = b
                maior = a
            }
        }
    
        // Exibir os números na ordem especificada
        se (i == 1) {
            escreva( menor, ", ", meio, ", ", maior)
        } senao se (i == 2) {
            escreva( maior, ", ", meio, ", ", menor)
        } senao se (i == 3) {
            escreva( meio, ", ", maior, ", ", menor)
        } senao {
            escreva( "Valor inválido para i.")
        }
    }
}

Explicação

O código acima, tem como objetivo receber do usuário um conjunto de 4 valores: um valor inteiro i e três valores reais a, b e c. Em seguida, o programa realiza as seguintes etapas:

  1. Declaração das variáveis: i do tipo inteiro e a, b, c, menor, meio e maior do tipo real.
  2. Solicita ao usuário que informe o valor de i e lê o valor digitado.
  3. Solicita ao usuário que informe o valor de a e lê o valor digitado.
  4. Solicita ao usuário que informe o valor de b e lê o valor digitado.
  5. Solicita ao usuário que informe o valor de c e lê o valor digitado.
  6. Realiza a ordenação dos valores a, b e c em ordem crescente, armazenando os valores em menor, meio e maior.
  7. Verifica o valor de i para exibir os números de acordo com a ordem especificada.
    • Se i for igual a 1, exibe menor, meio e maior separados por vírgula.
    • Se i for igual a 2, exibe maior, meio e menor separados por vírgula.
    • Se i for igual a 3, exibe meio, maior e menor separados por vírgula.
    • Caso contrário, exibe a mensagem “Valor inválido para i.”

O código utiliza a estrutura condicional “se… senao” para realizar a ordenação dos valores e exibir os números na ordem especificada. Ele fornece uma solução clara e estruturada para o problema proposto.

 

Resposta em Pascal

(*
Criado pelo Professor Giovani Da Cruz
https://giovanidacruz.com.br
*)
program OrdenarNumeros;
var
  i: integer;
  a, b, c: real;
  menor, meio, maior: real;

begin
  writeln('Informe o valor de i: ');
  readln(i);

  writeln('Informe o valor de a: ');
  readln(a);

  writeln('Informe o valor de b: ');
  readln(b);

  writeln('Informe o valor de c: ');
  readln(c);

  // Ordenar os valores em ordem crescente
  if (a <= b) and (a <= c) then
  begin
    menor := a;
    if b <= c then
    begin
      meio := b;
      maior := c;
    end
    else
    begin
      meio := c;
      maior := b;
    end;
  end
  else if (b <= a) and (b <= c) then
  begin
    menor := b;
    if a <= c then
    begin
      meio := a;
      maior := c;
    end
    else
    begin
      meio := c;
      maior := a;
    end;
  end
  else
  begin
    menor := c;
    if a <= b then
    begin
      meio := a;
      maior := b;
    end
    else
    begin
      meio := b;
      maior := a;
    end;
  end;

  // Exibir os números na ordem especificada
  if i = 1 then
    writeln(menor, ', ', meio, ', ', maior)
  else if i = 2 then
    writeln(maior, ', ', meio, ', ', menor)
  else if i = 3 then
    writeln(meio, ', ', maior, ', ', menor)
  else
    writeln('Valor inválido para i.');
end.

Nesse código em Pascal, foi realizada a adaptação do programa para ordenar números em ordem crescente. O programa solicita ao usuário os valores de i, a, b e c, e em seguida, ordena os valores em ordem crescente, armazenando em menor, meio e maior. Por fim, exibe os números na ordem especificada de acordo com o valor de i. Caso o valor de i não seja válido, exibe a mensagem “Valor inválido para i.”.

 

Resposta em C++

/********************************************************

Criado pelo professor Giovani Da Cruz
https://giovanidacruz.com.br

***********************************************************/
#include <iostream>
using namespace std;

int main() {
    int i;
    float a, b, c;
    float menor, meio, maior;

    cout << "Informe o valor de i: ";
    cin >> i;

    cout << "Informe o valor de a: ";
    cin >> a;

    cout << "Informe o valor de b: ";
    cin >> b;

    cout << "Informe o valor de c: ";
    cin >> c;

    // Ordenar os valores em ordem crescente
    if (a <= b && a <= c) {
        menor = a;
        if (b <= c) {
            meio = b;
            maior = c;
        } else {
            meio = c;
            maior = b;
        }
    } else if (b <= a && b <= c) {
        menor = b;
        if (a <= c) {
            meio = a;
            maior = c;
        } else {
            meio = c;
            maior = a;
        }
    } else {
        menor = c;
        if (a <= b) {
            meio = a;
            maior = b;
        } else {
            meio = b;
            maior = a;
        }
    }

    // Exibir os números na ordem especificada
    if (i == 1) {
        cout << menor << ", " << meio << ", " << maior;
    } else if (i == 2) {
        cout << maior << ", " << meio << ", " << menor;
    } else if (i == 3) {
        cout << meio << ", " << maior << ", " << menor;
    } else {
        cout << "Valor inválido para i.";
    }

    return 0;
}

Neste código, o usuário informa o valor de i e os três valores a, b e c. Em seguida, é feita uma verificação do valor de i para determinar qual ação deve ser executada. Dependendo do valor de i, os valores a, b e c são mostrados na tela em ordem crescente, decrescente ou com o maior valor entre os outros dois.

 

Resposta em Python

'''

Criado pelo professor Giovani Da Cruz
https://giovanidacruz.com.br

'''
# Solicitar os valores do usuário
i = int(input("Informe o valor de i: "))
a = float(input("Informe o valor de a: "))
b = float(input("Informe o valor de b: "))
c = float(input("Informe o valor de c: "))

# Ordenar os valores em ordem crescente
if a <= b and a <= c:
    menor = a
    if b <= c:
        meio = b
        maior = c
    else:
        meio = c
        maior = b
elif b <= a and b <= c:
    menor = b
    if a <= c:
        meio = a
        maior = c
    else:
        meio = c
        maior = a
else:
    menor = c
    if a <= b:
        meio = a
        maior = b
    else:
        meio = b
        maior = a

# Exibir os números na ordem especificada
if i == 1:
    print(menor, ", ", meio, ", ", maior)
elif i == 2:
    print(maior, ", ", meio, ", ", menor)
elif i == 3:
    print(meio, ", ", maior, ", ", menor)
else:
    print("Valor inválido para i.")

Nesse código em Python, foi realizada a adaptação do programa em C++ para Python. Ele realiza as mesmas etapas do código original:

  1. Solicita ao usuário os valores de i, a, b e c.
  2. Ordena os valores em ordem crescente, armazenando em menor, meio e maior.
  3. Exibe os números na ordem especificada de acordo com o valor de i.
  4. Caso o valor de i não seja válido, exibe a mensagem “Valor inválido para i.”.

Essa versão em Python possui uma sintaxe específica da linguagem, como a utilização da função input para receber os valores do usuário e a função print para exibir os resultados na tela.

 

Resposta em C#

/********************************************************

Criado pelo professor Giovani Da Cruz
https://giovanidacruz.com.br

***********************************************************/
using System;

class Program
{
    static void Main()
    {
        int i;
        float a, b, c;
        float menor, meio, maior;

        Console.WriteLine("Informe o valor de i: ");
        i = int.Parse(Console.ReadLine());

        Console.WriteLine("Informe o valor de a: ");
        a = float.Parse(Console.ReadLine());

        Console.WriteLine("Informe o valor de b: ");
        b = float.Parse(Console.ReadLine());

        Console.WriteLine("Informe o valor de c: ");
        c = float.Parse(Console.ReadLine());

        // Ordenar os valores em ordem crescente
        if (a <= b && a <= c)
        {
            menor = a;
            if (b <= c)
            {
                meio = b;
                maior = c;
            }
            else
            {
                meio = c;
                maior = b;
            }
        }
        else if (b <= a && b <= c)
        {
            menor = b;
            if (a <= c)
            {
                meio = a;
                maior = c;
            }
            else
            {
                meio = c;
                maior = a;
            }
        }
        else
        {
            menor = c;
            if (a <= b)
            {
                meio = a;
                maior = b;
            }
            else
            {
                meio = b;
                maior = a;
            }
        }

        // Exibir os números na ordem especificada
        if (i == 1)
            Console.WriteLine("{0}, {1}, {2}", menor, meio, maior);
        else if (i == 2)
            Console.WriteLine("{0}, {1}, {2}", maior, meio, menor);
        else if (i == 3)
            Console.WriteLine("{0}, {1}, {2}", meio, maior, menor);
        else
            Console.WriteLine("Valor inválido para i.");
    }
}

Nesse código em C#, foi realizada a adaptação do programa para ordenar números em ordem crescente. O programa solicita ao usuário os valores de i, a, b e c, e em seguida, ordena os valores em ordem crescente, armazenando em menor, meio e maior. Por fim, exibe os números na ordem especificada de acordo com o valor de i. Caso o valor de i não seja válido, exibe a mensagem “Valor inválido para i.”.

 

Resposta em Java

/********************************************************

Criado pelo professor Giovani Da Cruz
https://giovanidacruz.com.br

***********************************************************/
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int i;
        float a, b, c;
        float menor, meio, maior;

        System.out.print("Informe o valor de i: ");
        i = scanner.nextInt();

        System.out.print("Informe o valor de a: ");
        a = scanner.nextFloat();

        System.out.print("Informe o valor de b: ");
        b = scanner.nextFloat();

        System.out.print("Informe o valor de c: ");
        c = scanner.nextFloat();

        // Ordenar os valores em ordem crescente
        if (a <= b && a <= c) {
            menor = a;
            if (b <= c) {
                meio = b;
                maior = c;
            } else {
                meio = c;
                maior = b;
            }
        } else if (b <= a && b <= c) {
            menor = b;
            if (a <= c) {
                meio = a;
                maior = c;
            } else {
                meio = c;
                maior = a;
            }
        } else {
            menor = c;
            if (a <= b) {
                meio = a;
                maior = b;
            } else {
                meio = b;
                maior = a;
            }
        }

        // Exibir os números na ordem especificada
        if (i == 1) {
            System.out.println(menor + ", " + meio + ", " + maior);
        } else if (i == 2) {
            System.out.println(maior + ", " + meio + ", " + menor);
        } else if (i == 3) {
            System.out.println(meio + ", " + maior + ", " + menor);
        } else {
            System.out.println("Valor inválido para i.");
        }
    }
}

Nesse código em Java, o programa solicita ao usuário os valores de i, a, b e c utilizando a classe Scanner. Em seguida, os valores são ordenados em ordem crescente e armazenados nas variáveis menor, meio e maior. Por fim, os números são exibidos na ordem especificada de acordo com o valor de i. Caso o valor de i não seja válido, é exibida a mensagem “Valor inválido para i.”.

 

Beleza Pessoal?

Dúvidas ou sugestão de outras linguagens? Deixe o seu comentário!

Um abraço e até o próximo post. Valeu!

 

 

  • Publicado por Giovani Da Cruz
  • 4 views
  • 0 comentarios
  • 5 de junho de 2023

 

Está gostando do conteúdo?
Considere pagar um cafezinho para nossa equipe!

 

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Posts Relacionados a Categoria Algoritmos com Se, Senão e Caso

Continue aprendendo

Aumente o seu conhecimento
Crie um algoritmo e um programa que leia uma data em três variáveis inteiras (dia, mes e ano) e escreva a data correspondente ao dia anterior também de forma separada: dia, mês e ano.
8 de maio de 2024
Um estacionamento cobra R$ 8,00 para a primeira hora e para cada hora adicional é cobrado mais R$ 5,00. Fazer um algoritmo e um programa em que leia o tempo de estacionamento (em horas) e escreva o valor que deve ser pago.
17 de abril de 2024
Crie um algoritmo e um programa em que leia 4 valores, Hi, Mi, Hf, Mf, representando respectivamente a hora e minuto inicial e final de um evento, e calcule a duração do mesmo em horas e minutos. Considere que o evento pode iniciar em um dia e terminar no dia seguinte.
15 de abril de 2024
Crie um algoritmo e um programa em que leia um número e escreva: “Zero”, se o valor é zero; “Positivo”, e o valor é maior que zero; “Negativo” se o valor é negativo
9 de abril de 2024
Crie um algoritmo e um programa que leia as 3 notas de um aluno e escreva “APROVADO” caso a média aritmética for maior ou igual a 6, caso contrário escreva “REPROVADO”
4 de abril de 2024
O número 3025 tem a seguinte característica: 30+25=55 e 552=3025. Sendo um número de Kaprekar. Crie um algoritmo e um programa que solicite o usuário informar um número inteiro de quatro dígitos. O programa deve verificar e mostrar na tela uma mensagem indicando se este número possui esta característica, ou seja, ser um Número de Kaprekar.
30 de março de 2024
Crie um algoritmo e um programa em que implemente uma calculadora de 4 operações. O programa deve solicitar que o usuário informe três dados: o primeiro operando, o operador (+,-,*,/) e o segundo operando. O programa deve mostrar na tela a operação e seu resultado.
28 de março de 2024
Crie um algoritmo e um programa quesolicite o usuário informar a altura em metros e o sexo de uma pessoa. O programa deverá calcular o peso ideal da pessoa, utilizando as seguintes fórmulas:
16 de março de 2024
Crie um algoritmo e um programa que solicite que o usuário informe um código e três valores nomeados como a, b e c. O código vai determinar qual operação o algoritmo irá realizar
7 de março de 2024
Crie um algoritmo e um programa que solicite ao usuário informar um valor inteiro que corresponda a idade de um nadador. Após, o programa deverá classificar o nadador nas categorias abaixo e mostrar esta informação na tela do computador.
6 de março de 2024