NOTA: Lembre-se de salvar seus algoritmos em um arquivo com extensão .dart (por exemplo: media_aluno.dart).
Para executá-lo no terminal do Windows (cmd ou PowerShell), digite dart media_aluno.dart e tecle ENTER.
- Faça um algoritmo que leia as 3 notas de um aluno e calcule a sua média ponderada com os pesos 2, 3 e 5, respectivamente. Considere:
import 'dart:io';
void main() {
double nota1, nota2, nota3, media, mediaFinal, notaRecuperacao;
stdout.write('1ª NOTA = ');
nota1 = double.parse(stdin.readLineSync());
stdout.write('2ª NOTA = ');
nota2 = double.parse(stdin.readLineSync());
stdout.write('3ª NOTA = ');
nota3 = double.parse(stdin.readLineSync());
media = (2 * nota1 + 3 * nota2 + 5 * nota3) / 10;
print('MÉDIA = ' + media.toString());
if (media < 4)
print('REPROVADO | SEM RECUPERAÇÃO');
else if (media >= 4 && media <= 5.9) {
stdout.write('NOTA DA RECUPERAÇÃO = ');
notaRecuperacao = double.parse(stdin.readLineSync());
mediaFinal = (notaRecuperacao + media) / 2;
if (mediaFinal >= 5) {
print('APROVADO | FINAL');
} else {
print('REPROVADO | FINAL');
}
} else {
print('APROVADO');
}
}
- Desenvolva um algoritmo para ler dois valores (considere que não serão lidos valores iguais) e escrever o maior deles.
import 'dart:io';
void main() {
stdout.write('Digite o 1º número: ');
double numero1 = double.parse(stdin.readLineSync());
stdout.write('Digite o 2º número: ');
double numero2 = double.parse(stdin.readLineSync());
if (numero1 > numero2)
print('$numero1 é maior.');
else
print('$numero2 é maior.');
}
- Desenvolva um algoritmo para ler dois valores (considere que não serão lidos valores iguais) e escrevê-los em ordem crescente.
import 'dart:io';
void main() {
stdout.write('Digite o 1º número: ');
double numero1 = double.parse(stdin.readLineSync());
stdout.write('Digite o 2º número: ');
double numero2 = double.parse(stdin.readLineSync());
if (numero1 > numero2)
print('$numero2, $numero1');
else
print('$numero1, $numero2');
}
- Tendo como dados de entrada a altura e o sexo de uma pessoa (1 – Masculino ou 2 – Feminino), construa um algoritmo que calcule seu peso ideal, utilizando as seguintes fórmulas:
import 'dart:io';
void main() {
double pesoIdeal = 0;
stdout.write('Altura (em metros): ');
double altura = double.parse(stdin.readLineSync());
stdout.write('[1] Masculino/[2] Feminino: ');
int sexo = int.parse(stdin.readLineSync());
if (sexo == 1)
pesoIdeal = (72.7 * altura) - 58;
else if (sexo == 2)
pesoIdeal = (62.1 * altura) - 44.7;
print('Seu peso ideal é ' + pesoIdeal.toStringAsFixed(2) + ' kg');
}
- Faça um algoritmo para calcular a média aritmética entre duas notas de um aluno e mostrar sua situação, que pode ser aprovado (se a média for maior ou igual a 7.0) ou reprovado (caso a média seja inferior a 7.0).
import 'dart:io';
void main() {
stdout.write('1ª NOTA = ');
double nota1 = double.parse(stdin.readLineSync());
stdout.write('2ª NOTA = ');
double nota2 = double.parse(stdin.readLineSync());
double media = (nota1 + nota2) / 2;
print('MÉDIA = ' + media.toString());
if (media >= 7)
print('APROVADO');
else
print('REPROVADO');
}
- Faça um algoritmo para calcular o novo salário de um funcionário. Sabe-se que os funcionários que recebem atualmente salário de até R$ 1.045,00 terão aumento de 20%; os demais terão aumento de 10%.
import 'dart:io';
void main() {
double novoSalario = 0;
stdout.write('Digite o salário atual: R\$: ');
double salarioAtual = double.parse(stdin.readLineSync());
if (salarioAtual <= 1045)
novoSalario = 1.20 * salarioAtual;
else
novoSalario = 1.10 * salarioAtual;
print('Seu novo salário é: R\$:' + novoSalario.toStringAsFixed(2));
}

- A ingestão de bebidas alcoólicas em quantidades excessivas pode diminuir o nível de açúcar no sangue, podendo provocar convulsões, perda de consciência, lesão cerebral permanente e até a morte.
Sabendo-se que os níveis considerados normais de glicose no organismo variam de 70 a 110 mg/dl, desenvolva um algoritmo que receba o valor do nível de glicose no sangue de uma pessoa e indique se a mesma necessita, ou não, compensar a falta de açúcar no organismo.
import 'dart:io';
void main() {
stdout.write('Digite o nível de glicose: ');
double nivelGlicose = double.parse(stdin.readLineSync());
if (nivelGlicose < 70)
print('Hipoglicemia');
else if (nivelGlicose <= 110)
print('Nível normal.');
else
print('Hiperglicemia');
}
- Desenvolva um algoritmo para o cálculo do imposto de renda de um grupo de dez contribuintes, onde o usuário informe o valor anual do funcionário e o sistema mostra o cálculo do imposto de renda de acordo com a tabela progressiva abaixo.
| Base de Cálculo Anual em R$ | Alíquota % |
|---|---|
| Até 22.847,76 | – |
| De 22.847,77 até 33.919,80 | 7,5 |
| De 33.919,81 até 45.012,60 | 15,0 |
| De 45.012,61 até 55.976,16 | 22,5 |
| Acima de 55.976,16 | 27,5 |
import 'dart:io';
void main() {
double valor_irpf = 0;
stdout.write('Digite sua renda anual: R\$ ');
double renda_anual = double.parse(stdin.readLineSync());
if (renda_anual <= 22847.76)
valor_irpf = 0;
else if (renda_anual <= 33919.80)
valor_irpf = renda_anual * (7.5 / 100);
else if (renda_anual <= 45012.60)
valor_irpf = renda_anual * (15 / 100);
else if (renda_anual <= 55976.15)
valor_irpf = renda_anual * (22.5 / 100);
else
valor_irpf = renda_anual * (27.5 / 100);
print('Imposto de Renda devido: R\$ ' + valor_irpf.toStringAsFixed(2));
}
- Uma empresa concederá um aumento de salário aos seus funcionários, variável de acordo com o cargo, conforme a tabela abaixo. Faça um algoritmo que leia o salário e o cargo de um funcionário e calcule o novo salário. Se o cargo do funcionário não estiver na tabela, ele deverá, então, receber 40% de aumento. Mostre o salário antigo, o novo salário e a diferença.
| Código | Cargo | Percentual |
|---|---|---|
| 101 | Gerente | 10% |
| 102 | Engenheiro | 20% |
| 103 | Técnico | 30% |
| 104 | Outros | 40% |
import 'dart:io';
void main() {
double novo_salario = 0;
String menu = '--------------------------------\n' +
'Código | Cargo | Percentual\n' +
'--------------------------------\n' +
' 101 | Gerente | 10%\n' +
' 102 | Engenheiro | 20%\n' +
' 103 | Técnico | 30%\n' +
' 104 | Outros | 40%\n' +
'--------------------------------\n' +
'Digite o código do cargo: ';
stdout.write(menu);
int codigo_cargo = int.parse(stdin.readLineSync());
if (codigo_cargo != 101 &&
codigo_cargo != 102 &&
codigo_cargo != 103 &&
codigo_cargo != 104)
print('\nCódigo inválido!');
else {
stdout.write('Salário atual: R\$: ');
double salario_atual = double.parse(stdin.readLineSync());
if (codigo_cargo == 101)
novo_salario = 1.10 * salario_atual;
else if (codigo_cargo == 102)
novo_salario = 1.20 * salario_atual;
else if (codigo_cargo == 103)
novo_salario = 1.30 * salario_atual;
else if (codigo_cargo == 104) novo_salario = 1.40 * salario_atual;
print('\nNovo salário: R\$ ' + novo_salario.toStringAsFixed(2));
}
}
- Elabore um programa que resolva uma equação do 2º grau.
import 'dart:io';
import 'dart:math';
void main() {
double a, b, c, x1, x2, delta;
stdout.write('ax² + bx + c = 0 \na = ');
a = double.parse(stdin.readLineSync());
stdout.write('b = ');
b = double.parse(stdin.readLineSync());
stdout.write('c = ');
c = double.parse(stdin.readLineSync());
if (a != 0) {
delta = b * b - 4 * a * c;
print('delta = ' + delta.toStringAsFixed(2));
if (delta < 0) {
print('Não existem raízes reais!');
} else if (delta == 0) {
x1 = -b / (2 * a);
print('S = { ' + x1.toStringAsFixed(2) + '}');
} else {
x1 = (-b - sqrt(delta)) / (2 * a);
x2 = (-b + sqrt(delta)) / (2 * a);
print('S = { ' +
x1.toStringAsFixed(2) +
', ' +
x2.toStringAsFixed(2) +
'}');
}
} else {
print('Não é uma equação do 2º grau!');
}
}
*Atualizado em 30 de julho de 2023




muito legal, so não consigo fazer funcionar estou fazendo o 2ºmodulo DS na etec este ano de 2024 to perdidaço.