Escrever um algoritmo e um programa que leia a nota de duas provas e de dois trabalhos realizados em uma disciplina. Calcule a média das provas e a média dos trabalhos. Mostrar a média das provas e a média dos trabalhos.
E ai pessoal da comunidade Show Delphi, tudo beleza?
Este é o primeiro post da série de exercícios de algoritmos que estamos montando.
Serão diversos exercícios com algoritmos sequenciais, com testes e seleções, laços, vetores e muito mais.
Então vamos resolver o primeiro, sempre tentando dividir em partes, para facilitar
1ª Parte
Escrever um algoritmo e um programa que leia a nota de duas provas e de dois trabalhos realizados em uma disciplina.
2ª Parte
Calcule a média das provas e a média dos trabalhos.
3ª Parte
Mostrar a média das provas e a média dos trabalhos.
Sugestão de resposta do algoritmo em linguagem algorítmica:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| programa sequencial0001;
var
vNotaProva1, vNotaProva2 : Real;
vNotaTrab1, vNotaTrab2 : Real;
inicio
// solicitando as notas
escreva('Informe a nota do trabalho 1: ');
leia(vNotaTrab1);
escreva('Informe a nota do trabalho 2: ');
leia(vNotaTrab2);
escreva('Informe a nota da prova 1: ');
leia(vNotaProva1);
escreva('Informe a nota da prova 2: ');
leia(vNotaProva2);
// calcula e mostra as médias
escreva('Média dos trabalhos: ' + (vNotaTrab1 + vNotaTrab2) / 2);
escreva('Média das provas: ' + (vNotaProva1 + vNotaProva2) / 2);
fim. |
programa sequencial0001;
var
vNotaProva1, vNotaProva2 : Real;
vNotaTrab1, vNotaTrab2 : Real;
inicio
// solicitando as notas
escreva('Informe a nota do trabalho 1: ');
leia(vNotaTrab1);
escreva('Informe a nota do trabalho 2: ');
leia(vNotaTrab2);
escreva('Informe a nota da prova 1: ');
leia(vNotaProva1);
escreva('Informe a nota da prova 2: ');
leia(vNotaProva2);
// calcula e mostra as médias
escreva('Média dos trabalhos: ' + (vNotaTrab1 + vNotaTrab2) / 2);
escreva('Média das provas: ' + (vNotaProva1 + vNotaProva2) / 2);
fim.
Também temos uma sugestão de resposta em Pascal, Delphi Console, Lazarus.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
| program sequencial0001;
{$APPTYPE CONSOLE}
{$R *.res}
uses
SysUtils;
var
vNotaProva1, vNotaProva2 : Double;
vNotaTrab1, vNotaTrab2 : Double;
begin
try
Write('Informe a nota do trabalho 1: ');
Readln(vNotaTrab1);
Write('Informe a nota do trabalho 2: ');
Readln(vNotaTrab2);
Writeln('');
Write('Informe a nota da prova 1: ');
Readln(vNotaProva1);
Write('Informe a nota da prova 2: ');
Readln(vNotaProva2);
Writeln('');
Writeln('Média dos trabalhos: ',
FormatFloat('#0.00', (vNotaTrab1 + vNotaTrab2) / 2));
Writeln('Média das provas: ',
FormatFloat('#0.00',(vNotaProva1 + vNotaProva2) / 2));
Readln;
except
on E: Exception do
Writeln(E.ClassName, ': ', E.Message);
end;
end. |
program sequencial0001;
{$APPTYPE CONSOLE}
{$R *.res}
uses
SysUtils;
var
vNotaProva1, vNotaProva2 : Double;
vNotaTrab1, vNotaTrab2 : Double;
begin
try
Write('Informe a nota do trabalho 1: ');
Readln(vNotaTrab1);
Write('Informe a nota do trabalho 2: ');
Readln(vNotaTrab2);
Writeln('');
Write('Informe a nota da prova 1: ');
Readln(vNotaProva1);
Write('Informe a nota da prova 2: ');
Readln(vNotaProva2);
Writeln('');
Writeln('Média dos trabalhos: ',
FormatFloat('#0.00', (vNotaTrab1 + vNotaTrab2) / 2));
Writeln('Média das provas: ',
FormatFloat('#0.00',(vNotaProva1 + vNotaProva2) / 2));
Readln;
except
on E: Exception do
Writeln(E.ClassName, ': ', E.Message);
end;
end.
Conforme solicitado por usuários, também temos um exemplo de C.
Sugestão de resposta em C, C++ / C Builder
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
| #pragma hdrstop
#pragma argsused
#ifdef _WIN32
#include <tchar.h>
#else
typedef char _TCHAR;
#define _tmain main
#endif
#include <stdio.h>
#include <tchar.h>
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <time.h>
#include <string.h>
int _tmain(int argc, _TCHAR* argv[])
{
printf("Algoritmo 00001 - Algoritmos sequenciais. Show Delphi.\n");
// Para exibir corretamente os caracteres
system("chcp 1252 > nul");
float vNotaTrab1;
printf("Informe a nota do trabalho 1: ");
scanf("%f", &vNotaTrab1);
float vNotaTrab2;
printf("Informe a nota do trabalho 2: ");
scanf("%f", &vNotaTrab2);
float vNotaProva1;
printf("Informe a nota da prova 1: ");
scanf("%f", &vNotaProva1);
float vNotaProva2;
printf("Informe a nota da prova 2: ");
scanf("%f", &vNotaProva2);
printf("\n");
printf("\nMédia dos trabalhos: %5.2f",
(vNotaTrab1 + vNotaTrab2) / 2);
printf("\nMédia dos prova: %5.2f",
(vNotaProva1 + vNotaProva2) / 2);
printf("\n\n");
system("pause");
return 0;
} |
#pragma hdrstop
#pragma argsused
#ifdef _WIN32
#include <tchar.h>
#else
typedef char _TCHAR;
#define _tmain main
#endif
#include <stdio.h>
#include <tchar.h>
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <time.h>
#include <string.h>
int _tmain(int argc, _TCHAR* argv[])
{
printf("Algoritmo 00001 - Algoritmos sequenciais. Show Delphi.\n");
// Para exibir corretamente os caracteres
system("chcp 1252 > nul");
float vNotaTrab1;
printf("Informe a nota do trabalho 1: ");
scanf("%f", &vNotaTrab1);
float vNotaTrab2;
printf("Informe a nota do trabalho 2: ");
scanf("%f", &vNotaTrab2);
float vNotaProva1;
printf("Informe a nota da prova 1: ");
scanf("%f", &vNotaProva1);
float vNotaProva2;
printf("Informe a nota da prova 2: ");
scanf("%f", &vNotaProva2);
printf("\n");
printf("\nMédia dos trabalhos: %5.2f",
(vNotaTrab1 + vNotaTrab2) / 2);
printf("\nMédia dos prova: %5.2f",
(vNotaProva1 + vNotaProva2) / 2);
printf("\n\n");
system("pause");
return 0;
}
Também for solicitação de usuários e para ajudar o entendimento, aqui vai uma resposta em java.
Sugestão de resposta em Java com NetBeans
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
| package exercicio1;
import javax.swing.JOptionPane;
public class Exercicio1 {
public static void main(String[] args) {
Double prova1 = 0.0;
Double prova2 = 0.0;
Double trabalho1 = 0.0;
Double trabalho2 = 0.0;
Double mediaprova;
Double mediatrabalho;
System.out.println("Informe a nota da prova1");
prova1 = Double.parseDouble(JOptionPane.showInputDialog("Informe a nota da prova1"));
System.out.println("Informe a nota da prova2");
prova2 = Double.parseDouble(JOptionPane.showInputDialog("Informe a nota da prova2"));
System.out.println("Informe a nota do trabalho1");
trabalho1 = Double.parseDouble(JOptionPane.showInputDialog("Informe a nota do trabalho1"));
System.out.println("Informe a nota do trabalho2");
trabalho2 = Double.parseDouble(JOptionPane.showInputDialog("Informe a nota do trabalho2"));
mediaprova = (prova1 + prova2) / 2;
mediatrabalho = (trabalho1 + trabalho2) / 2;
System.out.println("A média das provas é: " + mediaprova);
System.out.println(" A média dos trabalhos é: " + mediatrabalho);
}
} |
package exercicio1;
import javax.swing.JOptionPane;
public class Exercicio1 {
public static void main(String[] args) {
Double prova1 = 0.0;
Double prova2 = 0.0;
Double trabalho1 = 0.0;
Double trabalho2 = 0.0;
Double mediaprova;
Double mediatrabalho;
System.out.println("Informe a nota da prova1");
prova1 = Double.parseDouble(JOptionPane.showInputDialog("Informe a nota da prova1"));
System.out.println("Informe a nota da prova2");
prova2 = Double.parseDouble(JOptionPane.showInputDialog("Informe a nota da prova2"));
System.out.println("Informe a nota do trabalho1");
trabalho1 = Double.parseDouble(JOptionPane.showInputDialog("Informe a nota do trabalho1"));
System.out.println("Informe a nota do trabalho2");
trabalho2 = Double.parseDouble(JOptionPane.showInputDialog("Informe a nota do trabalho2"));
mediaprova = (prova1 + prova2) / 2;
mediatrabalho = (trabalho1 + trabalho2) / 2;
System.out.println("A média das provas é: " + mediaprova);
System.out.println(" A média dos trabalhos é: " + mediatrabalho);
}
}
Afim de facilitar ainda mais o entendimento este algoritmo também já foi gravado na série Algoritmo Ao Vivo,
da comunidade Show Delphi.
Dúvidas ou sugestões? Deixe o seu comentário.
Outras linguagens? Solicite pelos comentários.
Por hoje é isso pessoal. Um abraço e até a próxima. Valeu!
-
InfusTec
-
4.754 views
- 0 comentários
- 2 de abril de 2015
Está gostando do conteúdo? Considere pagar um cafezinho para nossa equipe!
Posts Relacionados - Continue Aprendendo