[java] while como Sentinela,[free pascal] Métodos de Pesquisa 1

Propaganda
[java] while como Sentinela
// Programas contador de média controlado por sentinela
// Pacote do nucleo java
import java.text.DecimalFormat;
//Pacote de extensao Java
import javax.swing.JOptionPane;
public class Average2 {
public static void main (String args[]) {
int qNotas, //quantidade de notas lidas
vNota, //valor da nota lida
total; //soma de todas as notas
double media; //media de todas as notas
String input; //nota em texto digitada pelo usuario
//Inicializacao
total = 0; //limpa
qNotas = 0; //prepara para executar o laco
//Solicita a entrada e le a nota digitada pelo usuario
input = JOptionPane.showInputDialog(“Entre com a nota, ou
digite -1 para terminar”);
//converte texto em numero
vNota = Integer.parseInt(input);
while (vNota != -1) {
total = total + vNota;
qNotas = qNotas + 1;
//Solicita novamente a entrada e le a nota digitada pelo o
usuario
input = JOptionPane.showInputDialog(“Entre com a nota, ou
digite -1 para terminar”);
vNota = Integer.parseInt(input);
}
//Concluindo
DecimalFormat twoDigits = new DecimalFormat(“0.00”);
if (qNotas != 0) {
media = (double) total/qNotas;
//Exibe a media das notas do teste
JOptionPane.showMessageDialog(null, “A média da classe é :” +
twoDigits.format(media),
“Media
da
classe”,
JOptionPane.INFORMATION_MESSAGE);
}
else
JOptionPane.showMessageDialog(null, “Nenhum valor digitado”,
“Media da turma”, JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
}
}
[free pascal]
Pesquisa
1:
sequencial
Métodos de
Pesquisa
Esse exemplo demostra como é feita a pesquisa sequencial. Nele
o usuário digita 10 valores (nomes de pessoas), esses valores
são armazenados em uma matriz, depois é pedido ao usuário que
entre com um nome a ser pesquisado. Esse valor é comparado a
todos os valores da matriz e caso seja igual, é imprimido um
texto na tela do usuário dizendo que o nome foi encontrado.
program PESQUISA_SEQUENCIAL;
var
nome: array[1..10] of string;
i: integer;
pesq: string;
resp: string;
acha: boolean;
BEGIN
writeln(‘Pesquisa sequencial de nomes’);
writeln;
{Entra com os nomes na Matriz}
for i:= 1 to 10 do
begin
write(‘Digiteo ‘, i:2, ‘o nome: ‘); readln(nome[i]);
end;
resp:=’sim’;
{Trecho que realiza o desejo de pesquisar Pesquisar = sim}
while (resp=’sim’) OR (resp=’SIM’) do
begin
{Rotina de pesquisa}
writeln;
write(‘Entre o nome a ser pesquisado: ‘); readln(pesq);
i := 1;
acha:= false;
while (i<= 10) and (acha=false) do Begin
if (pesq= nome[i]) then
acha:=true
Else
i:=i+1;
if (acha=true) then
writeln(pesq, ‘ foi localizado na posição ‘, i:2)
else
writeln(pesq, ‘ não foi localizado’);
{Fim da torina de pesquisa}
writeln;
{Pergunta se quer fazer novamente a pesquisa }
end;
write(‘Deseja continuar? sim/não: ‘);
readln(resp);
end;
END.
Download