Program AULA_BASICA_DE_INGLES_INSTRUMENTAL;
uses crt;
var
opcao : integer;
// Site: http://programjm.blogspot.com.br/
// Autor: João Matheus Santos Assis.
{
Neste programa pretende-se desenvolver habilidades de
leitura e Escrita de Números, Dias da Semana e Meses do
Ano na Lingua Inglesa.
Aqui é proporcionado condições de tradução de palavras,
sendo uma forma dinâmica e até mesmo educativa de
aprender o Inglês Instrumental.
O Inglês Instrumental é o Inglês com Objetivos Específicos,
ou seja, entender textos das áreas de interesse do aluno.
Neste caso este programa fornece ferramenta úteis para quem
é iniciante no Inglês e buscam testar a escrita.
}
procedure numero;
// Aqui colocamos as variáveis que serão usadas só neste procedimento.
var
vetorNumero : array[1..10] of String;
vetorVerificacaoNumero : array[1..10] of String;
numeroDeAcerto: integer;
i : integer;
begin
numeroDeAcerto := 0;
for i := 1 to 10 do begin
write (i, ' - ');
readln(vetorNumero[i]);
end;
{
No vetorVerificacaoNumero é definido a resposta
correta, ou seja, os Numeros de 1 à 10 em Inglês.
}
vetorVerificacaoNumero[1] := 'ONE';
vetorVerificacaoNumero[2] := 'TWO';
vetorVerificacaoNumero[3] := 'THREE';
vetorVerificacaoNumero[4] := 'FOUR';
vetorVerificacaoNumero[5] := 'FIVE';
vetorVerificacaoNumero[6] := 'SIX';
vetorVerificacaoNumero[7] := 'SEVEN';
vetorVerificacaoNumero[8] := 'EIGHT';
vetorVerificacaoNumero[9] := 'NINE';
vetorVerificacaoNumero[10] := 'TEN';
writeln;
{
Aqui é feito a correção do questionário; Tanto a resposta
estando Certa como Errada é mostrado os Numeros em Inglês.
}
for i := 1 to 10 do begin
if (UpCase(VetorNumero[i]) = vetorVerificacaoNumero[i]) then begin
writeln (' Correct! ', i ,' - ', vetorVerificacaoNumero[i]);
numeroDeAcerto := numeroDeAcerto + 1;
end else
writeln (' Wrong! ', i, ' - ', vetorVerificacaoNumero[i]);
end;
writeln;
// Exibindo o número de acerto do usuário.
writeln('Number of Hits: ', numeroDeAcerto);
// É esperado aqui que o usuário pressione uma tecla para continuar.
readln;
end;
procedure diaDaSemana;
//Aqui colocamos as variáveis que serão usadas só neste procedimento.
var
vetorDiaDaSemana : array[1..7] of String;
vetorVerificacaoDiaDaSemana : array[1..7] of String;
numeroDeAcerto : integer;
i : integer;
begin
numeroDeAcerto := 0;
for i := 1 to 7 do begin
// chr(167): retorna um caractere da Tabela Ascii.
write (i, chr(167) ,' Day of the week - ');
readln(vetorDiaDaSemana[i]);
end;
vetorVerificacaoDiaDaSemana[1] := 'SUNDAY';
vetorVerificacaoDiaDaSemana[2] := 'MONDAY';
vetorVerificacaoDiaDaSemana[3] := 'TUESDAY';
vetorVerificacaoDiaDaSemana[4] := 'WEDNESDAY';
vetorVerificacaoDiaDaSemana[5] := 'THURSDAY';
vetorVerificacaoDiaDaSemana[6] := 'FRIDAY';
vetorVerificacaoDiaDaSemana[7] := 'SATURDAY';
writeln;
for i := 1 to 7 do begin
if (UpCase(vetorDiaDaSemana[i]) = vetorVerificacaoDiaDaSemana[i]) then begin
writeln (' Correct! ', i, chr(167), ' Day of the week - ',
vetorVerificacaoDiaDaSemana[i]);
numeroDeAcerto := numeroDeAcerto + 1;
end else
writeln (' Wrong! ', i , chr(167) ,' Day of the week - ',
vetorVerificacaoDiaDaSemana[i]);
end;
writeln;
writeln('Number of Hits: ', numeroDeAcerto);
readln;
end;
procedure mesesDoAno;
// Aqui colocamos as variáveis que serão usadas só neste procedimento.
var
vetorMesesDoAno : array[1..12] of String;
vetorVerificacaoMesesDoAno : array[1..12] of String;
numeroDeAcerto : integer;
i : integer;
begin
numeroDeAcerto := 0;
for i := 1 to 12 do begin
write (i, chr(167) ,' Month of the year - ');
readln(vetorMesesDoAno[i]);
end;
vetorVerificacaoMesesDoAno[1] := 'JANUARY';
vetorVerificacaoMesesDoAno[2] := 'FEBRUARY';
vetorVerificacaoMesesDoAno[3] := 'MARCH';
vetorVerificacaoMesesDoAno[4] := 'APRIL';
vetorVerificacaoMesesDoAno[5] := 'MAY';
vetorVerificacaoMesesDoAno[6] := 'JUNE';
vetorVerificacaoMesesDoAno[7] := 'JULY';
vetorVerificacaoMesesDoAno[8] := 'AUGUST';
vetorVerificacaoMesesDoAno[9] := 'SEPTEMBER';
vetorVerificacaoMesesDoAno[10] := 'OCTOBER';
vetorVerificacaoMesesDoAno[11] := 'NOVEMBER';
vetorVerificacaoMesesDoAno[12] := 'DECEMBER';
writeln;
for i := 1 to 12 do begin
if (UpCase(vetorMesesDoAno[i]) = vetorVerificacaoMesesDoAno[i]) then begin
writeln (' Correct! ', i , chr(167) ,' Month of the year - ',
vetorVerificacaoMesesDoAno[i]);
numeroDeAcerto := numeroDeAcerto + 1;
end else
writeln (' Wrong! ', i , chr(167) ,' Month of the year - ',
vetorVerificacaoMesesDoAno[i]);
end;
writeln;
writeln('Number of Hits: ', numeroDeAcerto);
readln;
end;
{
Aqui é feito o procedimento cabeçalho do Menu Ativo,
facilitando assim a compreenção do software para o usuário.
}
procedure cabecalho(Titulo: String);
var
linha: integer;
begin
// Escreve traço (-) e espaço em brancos ( ).
for linha := 1 to 39 do
write ('- ');
// Quebra de Linha.
writeln;
// Escreve espaço em branco seguido pelo Título enviado por parâmetro.
for linha := 1 to 30 do
write (' ');
writeln (Titulo);
for linha := 1 to 39 do
write ('- ');
writeln;
writeln;
end;
// Programa Principal.
begin
// O Laço de repetição só terá fim quando o usuário digitar 4 como opção.
repeat
cabecalho ('ENGLISH INSTRUMENTAL');
// Menu de Opção.
writeln (' 1 - NUMBERS');
writeln (' 2 - DAYS OF THE WEEK');
writeln (' 3 - MONTHS OF THE YEAR');
writeln (' 4 - EXIT');
writeln;
// Leitura da Opção escolhida.
write ('Enter option: ');
readln(opcao);
// Apaga o que estiver na tela.
clrscr;
// Seletor responsável por desviar para o parâmetro correspondente.
CASE (opcao) OF
1 : begin
cabecalho ('NUMBERS');
Numero;
end;
2 : begin
cabecalho ('DAYS OF THE WEEK');
diaDaSemana;
end;
3 : begin
cabecalho ('MONTHS OF THE YEAR');
mesesDoAno;
end;
end;
clrscr;
until (opcao = 4);
readkey;
end.
uses crt;
var
opcao : integer;
// Site: http://programjm.blogspot.com.br/
// Autor: João Matheus Santos Assis.
{
Neste programa pretende-se desenvolver habilidades de
leitura e Escrita de Números, Dias da Semana e Meses do
Ano na Lingua Inglesa.
Aqui é proporcionado condições de tradução de palavras,
sendo uma forma dinâmica e até mesmo educativa de
aprender o Inglês Instrumental.
O Inglês Instrumental é o Inglês com Objetivos Específicos,
ou seja, entender textos das áreas de interesse do aluno.
Neste caso este programa fornece ferramenta úteis para quem
é iniciante no Inglês e buscam testar a escrita.
}
procedure numero;
// Aqui colocamos as variáveis que serão usadas só neste procedimento.
var
vetorNumero : array[1..10] of String;
vetorVerificacaoNumero : array[1..10] of String;
numeroDeAcerto: integer;
i : integer;
begin
numeroDeAcerto := 0;
for i := 1 to 10 do begin
write (i, ' - ');
readln(vetorNumero[i]);
end;
{
No vetorVerificacaoNumero é definido a resposta
correta, ou seja, os Numeros de 1 à 10 em Inglês.
}
vetorVerificacaoNumero[1] := 'ONE';
vetorVerificacaoNumero[2] := 'TWO';
vetorVerificacaoNumero[3] := 'THREE';
vetorVerificacaoNumero[4] := 'FOUR';
vetorVerificacaoNumero[5] := 'FIVE';
vetorVerificacaoNumero[6] := 'SIX';
vetorVerificacaoNumero[7] := 'SEVEN';
vetorVerificacaoNumero[8] := 'EIGHT';
vetorVerificacaoNumero[9] := 'NINE';
vetorVerificacaoNumero[10] := 'TEN';
writeln;
{
Aqui é feito a correção do questionário; Tanto a resposta
estando Certa como Errada é mostrado os Numeros em Inglês.
}
for i := 1 to 10 do begin
if (UpCase(VetorNumero[i]) = vetorVerificacaoNumero[i]) then begin
writeln (' Correct! ', i ,' - ', vetorVerificacaoNumero[i]);
numeroDeAcerto := numeroDeAcerto + 1;
end else
writeln (' Wrong! ', i, ' - ', vetorVerificacaoNumero[i]);
end;
writeln;
// Exibindo o número de acerto do usuário.
writeln('Number of Hits: ', numeroDeAcerto);
// É esperado aqui que o usuário pressione uma tecla para continuar.
readln;
end;
procedure diaDaSemana;
//Aqui colocamos as variáveis que serão usadas só neste procedimento.
var
vetorDiaDaSemana : array[1..7] of String;
vetorVerificacaoDiaDaSemana : array[1..7] of String;
numeroDeAcerto : integer;
i : integer;
begin
numeroDeAcerto := 0;
for i := 1 to 7 do begin
// chr(167): retorna um caractere da Tabela Ascii.
write (i, chr(167) ,' Day of the week - ');
readln(vetorDiaDaSemana[i]);
end;
vetorVerificacaoDiaDaSemana[1] := 'SUNDAY';
vetorVerificacaoDiaDaSemana[2] := 'MONDAY';
vetorVerificacaoDiaDaSemana[3] := 'TUESDAY';
vetorVerificacaoDiaDaSemana[4] := 'WEDNESDAY';
vetorVerificacaoDiaDaSemana[5] := 'THURSDAY';
vetorVerificacaoDiaDaSemana[6] := 'FRIDAY';
vetorVerificacaoDiaDaSemana[7] := 'SATURDAY';
writeln;
for i := 1 to 7 do begin
if (UpCase(vetorDiaDaSemana[i]) = vetorVerificacaoDiaDaSemana[i]) then begin
writeln (' Correct! ', i, chr(167), ' Day of the week - ',
vetorVerificacaoDiaDaSemana[i]);
numeroDeAcerto := numeroDeAcerto + 1;
end else
writeln (' Wrong! ', i , chr(167) ,' Day of the week - ',
vetorVerificacaoDiaDaSemana[i]);
end;
writeln;
writeln('Number of Hits: ', numeroDeAcerto);
readln;
end;
procedure mesesDoAno;
// Aqui colocamos as variáveis que serão usadas só neste procedimento.
var
vetorMesesDoAno : array[1..12] of String;
vetorVerificacaoMesesDoAno : array[1..12] of String;
numeroDeAcerto : integer;
i : integer;
begin
numeroDeAcerto := 0;
for i := 1 to 12 do begin
write (i, chr(167) ,' Month of the year - ');
readln(vetorMesesDoAno[i]);
end;
vetorVerificacaoMesesDoAno[1] := 'JANUARY';
vetorVerificacaoMesesDoAno[2] := 'FEBRUARY';
vetorVerificacaoMesesDoAno[3] := 'MARCH';
vetorVerificacaoMesesDoAno[4] := 'APRIL';
vetorVerificacaoMesesDoAno[5] := 'MAY';
vetorVerificacaoMesesDoAno[6] := 'JUNE';
vetorVerificacaoMesesDoAno[7] := 'JULY';
vetorVerificacaoMesesDoAno[8] := 'AUGUST';
vetorVerificacaoMesesDoAno[9] := 'SEPTEMBER';
vetorVerificacaoMesesDoAno[10] := 'OCTOBER';
vetorVerificacaoMesesDoAno[11] := 'NOVEMBER';
vetorVerificacaoMesesDoAno[12] := 'DECEMBER';
writeln;
for i := 1 to 12 do begin
if (UpCase(vetorMesesDoAno[i]) = vetorVerificacaoMesesDoAno[i]) then begin
writeln (' Correct! ', i , chr(167) ,' Month of the year - ',
vetorVerificacaoMesesDoAno[i]);
numeroDeAcerto := numeroDeAcerto + 1;
end else
writeln (' Wrong! ', i , chr(167) ,' Month of the year - ',
vetorVerificacaoMesesDoAno[i]);
end;
writeln;
writeln('Number of Hits: ', numeroDeAcerto);
readln;
end;
{
Aqui é feito o procedimento cabeçalho do Menu Ativo,
facilitando assim a compreenção do software para o usuário.
}
procedure cabecalho(Titulo: String);
var
linha: integer;
begin
// Escreve traço (-) e espaço em brancos ( ).
for linha := 1 to 39 do
write ('- ');
// Quebra de Linha.
writeln;
// Escreve espaço em branco seguido pelo Título enviado por parâmetro.
for linha := 1 to 30 do
write (' ');
writeln (Titulo);
for linha := 1 to 39 do
write ('- ');
writeln;
writeln;
end;
// Programa Principal.
begin
// O Laço de repetição só terá fim quando o usuário digitar 4 como opção.
repeat
cabecalho ('ENGLISH INSTRUMENTAL');
// Menu de Opção.
writeln (' 1 - NUMBERS');
writeln (' 2 - DAYS OF THE WEEK');
writeln (' 3 - MONTHS OF THE YEAR');
writeln (' 4 - EXIT');
writeln;
// Leitura da Opção escolhida.
write ('Enter option: ');
readln(opcao);
// Apaga o que estiver na tela.
clrscr;
// Seletor responsável por desviar para o parâmetro correspondente.
CASE (opcao) OF
1 : begin
cabecalho ('NUMBERS');
Numero;
end;
2 : begin
cabecalho ('DAYS OF THE WEEK');
diaDaSemana;
end;
3 : begin
cabecalho ('MONTHS OF THE YEAR');
mesesDoAno;
end;
end;
clrscr;
until (opcao = 4);
readkey;
end.
Palavras-Chaves: Número, Dias da Semana, Meses do Ano, Sair do Programa, Questionário, Teste de Aprendizado, Software Educacional, Caixa Alta em Pascal, Vetor, Operadores Condicionais, Uso do Case, If...Then, Procedimentos, Procedure, Laço de repetição, Repeat...Until, For...To, Número de Acertos, Menu de Opção, Limpar a tela, Quebra de Linha, Parâmetro, Título da aplicação, Lógica de Programação, Resposta, Correção, Tabela Ascii, Dev-Pascal, Usuário, Inglês Instrumental, Pascal.
Artigos relacionados em Pascal:
- Calculando o IMC em Pascal
- Tabela ASCII em Pascal
- Resolvendo Sistemas de Equações do Primeiro Grau com Duas Incógnitas em Pascal
- Obtendo o quadrado de um número (n) positivo através da soma dos n primeiros números ímpares em Pascal
Feito no Dev-Pascal 1.9.2 | Executável |
Feito no Dev-Pascal 1.9.2 | Executável |