VisuAlg ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Exercícios Resolvidos de VisuAlg - A concessionária de veículos "CARANGO VELHO" está vendendo os seus veículos com descontos. Faça um algoritmo VisuAlgQuantidade de visualizações: 549 vezes |
|
Pergunta/Tarefa: A concessionária de veículos "CARANGO VELHO" está vendendo os seus veículos com descontos. Faça um algoritmo VisuAlg que calcule e exiba o valor do desconto e o valor a ser pago pelo cliente de vários carros. O desconto deverá ser calculado de acordo com o ano do veículo. Até o ano 2000 o desconto é 12%, e acima de 2000 o desconto é de 7%. Seu código deverá solicitar o valor do carro e o seu ano e aplicar o desconto correspondente. Além disso o sistema deverá perguntar se deseja continuar calculando descontos até que a resposta seja: "(N) Não". Informar o total de carros com ano até 2000 e o total geral a ser pago pelo cliente. Sua saída deve ser parecida com: Informe o valor do carro sem desconto: 25000 Informe o ano do carro: 2010 Desconto concedido: 1750 Valor do carro com desconto: 23250 Deseja adicionar mais carros? [S, N]: S Informe o valor do carro sem desconto: 30500 Informe o ano do carro: 1985 Desconto concedido: 3660 Valor do carro com desconto: 26840 Deseja adicionar mais carros? [S, N]: S Informe o valor do carro sem desconto: 16800 Informe o ano do carro: 1990 Desconto concedido: 2016 Valor do carro com desconto: 14784 Deseja adicionar mais carros? [S, N]: N Total de carros com ano até 2000: 2 Total geral a pagar: 64874 Veja a resolução comentada deste exercício usando VisuAlg:
algoritmo "Cálculo de desconto nos preços de vários veículos"
var
// variáveis usadas na resolução do problema
valor_carro, valor_desconto, valor_carro_desconto: real
total_geral: real
ano: inteiro
total_carros_ano_2000: inteiro
resposta: caractere
inicio
// vamos inicializar os valores de algumas variáveis
total_geral <- 0
total_carros_ano_2000 <- 0
// repete até que o usuário informe o valor "N"
repita
// vamos ler o valor do carro sem desconto
escreva("Informe o valor do carro sem desconto: ")
leia(valor_carro)
// vamos ler o ano do carro
escreva("Informe o ano do carro: ")
leia(ano)
// o ano é menor ou igual a 2000
se ano <= 2000 entao
valor_desconto <- valor_carro * (12.0 / 100.0)
// vamos somar mais este carro
total_carros_ano_2000 <- total_carros_ano_2000 + 1
senao
valor_desconto <- valor_carro * (7.0 / 100.0)
fimse
// calculamos o valor do carro com o desconto
valor_carro_desconto <- valor_carro - valor_desconto
escreval("Desconto concedido: ", valor_desconto)
escreval("Valor do carro com desconto: ", valor_carro_desconto)
// somamos mais este valor ao total geral
total_geral <- total_geral + valor_carro_desconto
// perguntamos se o usuário deseja adicionar mais carros
escreva("Deseja adicionar mais carros? [S, N]: ")
leia(resposta)
// adiciona uma quebra de linha
escreval()
ate resposta = "N"
// mostramos os resultados
escreval("Total de carros com ano até 2000: ", total_carros_ano_2000)
escreval("Total geral a pagar: ", total_geral)
fimalgoritmo
|
C++ ::: STL (Standard Template Library) ::: Vector C++ |
Como criar um vector de strings em C++, inserir alguns nomes usando a função push_back() e percorrê-los usando um iteradorQuantidade de visualizações: 11397 vezes |
|
Se você tem pouca experiência com a classe container vector da STL (Standard Template Library), este exemplo o ajudará um pouco. Aqui eu mostro como criar um vector de strings em C++, inserir alguns nomes nele usando a função push_back() e depois percorrê-los individualmente usando um iterador. Veja o código C++ completo para o exemplo:
#include <iostream>
#include <vector>
using namespace std;
int main(int argc, char *argv[]){
// um vector vazio que conterá strings
vector<string> nomes;
// vamos inserir três nomes
nomes.push_back("Osmar J. Silva");
nomes.push_back("Carlos de Souza");
nomes.push_back("Maria Dias de Carvalho");
// vamos percorrer o vector e exibir os nomes
vector<string>::iterator it;
for(it = nomes.begin(); it < nomes.end(); it++){
cout << *it << endl;
}
cout << "\n" << endl;
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
Ao executar este código C++ nós teremos o seguinte resultado: Osmar J. Silva Carlos de Souza Maria Dias de Carvalho |
Python ::: NumPy Python Library (Biblioteca Python NumPy) ::: Números Aleatórios, Números Randômicos, Amostras Aleatórias, Amostras Randômicas |
Como gerar números aleatórios em Python usando o método random.randint() da biblioteca NumPyQuantidade de visualizações: 3005 vezes |
|
Nesta dica mostrarei como podemos gerar números inteiros randômicos usando random.randint() da biblioteca NumPy. Note que a geração de números aleatórias é uma parte importante para o desenvolvimento de modelos de teste (test models) em Inteligência Artificial (IA), Machine Learning e outras áreas de estudo que envolvem Data Science. Veja um exemplo da forma mais simples do uso da função random.randint():
# importamos o módulo random da bibliteca NumPy
from numpy import random
def main():
# vamos gerar um número inteiro aleatório de 0 (incluído) à
# 10 (não incluído)
valor = random.randint(10)
print("O número sorteado foi: ", valor)
if __name__== "__main__":
main()
Ao executar este código teremos um resultado parecido com: O número sorteado foi: 3 Aqui nós informamos o limite alto do valor aleatório a ser gerado (mas ele não é incluído). Se quisermos limitar a faixa inferior, podemos tirar proveito dos parâmetros low e high da função randint(). Veja:
# importamos o módulo random da bibliteca NumPy
from numpy import random
def main():
# vamos gerar um número inteiro aleatório de 5 (incluído)
# à 10 (não incluído)
valor = random.randint(5, 10)
print("O número sorteado foi: ", valor)
if __name__== "__main__":
main()
A partir da versão 1.19 da NumPy, os desenvolvedores da biblioteca recomendam o uso do método integers() do módulo default_rng(). |
Java ::: Pacote java.awt.image ::: BufferedImage |
Como desenhar um BufferedImage em um JComponent do JavaQuantidade de visualizações: 11162 vezes |
Neste exemplo nós usamos o método drawImage() da classe Graphics para desenhar o conteúdo de um BufferedImage (que contém uma imagem JPG) em uma JFrame do Java Swing:
import java.awt.*;
import java.io.*;
import java.awt.image.*;
import java.awt.event.*;
import javax.swing.*;
import javax.imageio.*;
public class Estudos extends JFrame{
private BufferedImage imagem;
public Estudos(){
super("Estudos Java");
Container c = getContentPane();
c.setLayout(new FlowLayout());
JButton btn = new JButton("Carregar Imagem");
btn.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e){
imagem = null;
try{
imagem = ImageIO.read(
new File("imagens/fundo.jpg"));
}
catch(IOException exc){
JOptionPane.showMessageDialog(null,
"Erro ao carregar a imagem: " +
exc.getMessage());
}
if(imagem != null){
desenhar();
}
}
}
);
c.add(btn);
setSize(400, 300);
setVisible(true);
}
public void desenhar(){
// desenha a imagem no JFrame
Graphics g = getGraphics();
g.drawImage(imagem, 0, 0, this);
}
public static void main(String args[]){
Estudos app = new Estudos();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
|
Nossas 20 dicas & truques de programação mais populares |
|
JavaScript - Como testar se uma string começa com uma determinada substring em JavaScript usando a função startsWith() AutoLISP - Como desenhar uma linha no AutoCAD usando AutoLISP - Dois pontos geométricos e o comando LINE C# - Como adicionar conteúdo ao final de um arquivo em C# usando as classes FileStream e StreamWriter |
Você também poderá gostar das dicas e truques de programação abaixo |
|
C - Como concatenar apenas parte de uma string à outra string usando a função strncat() da linguagem C |
Nossas 20 dicas & truques de programação mais recentes |
Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site |
|
Python - Como criar o jogo Pedra, Papel, Tesoura em Python - Jogo completo em Python com código comentado |
Últimos Exercícios Resolvidos |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






