Pular para o conteúdo principal

Postagens

Mostrando postagens de junho, 2011

Consulta nome em um vetor

Program Pzim ; {1. Faça um programa que armazene 5 nomes em um vetor. Apos ser digitado um nome, se for encontrado no vetor mostrar a posição desse nome no vetor, caso contrario mostrar a mensagem: Não enconteri!.} var nome:array[1..5] of string;      //variavel vetor para armazanar os nomes i:integer;                       //contador cons_nome:string;                //variavel para receber o nome a ser consultado no vetor  Begin   for i:=1 to 5 do            //cadastra os 5 nomes no vetor   begin   writeln('Digite o ',i,'o. nome : ');   readln(nome[i]);   clrscr;           //limpa a tela   end;   writeln(' C O N S U L T A  N O M E '); writeln; writeln('Digite um nome para consulta : ');  //recebe o nome a ser consultadp readln(cons_nome);...

Diárias em um Hotel

{Um hotel cobra R$ 300,00 por diária e mais uma taxa adicional de serviços. Se a diária for menor que 15 a taxa e de R$ 20,00. Se o número de diárias for igual a 15 a taxa é de R$ 14,00 e se o número for maior que 15 a taxa é de R$ 12,00. Considerando-se que se tenha 200 pessoas e para cada pessoa tenha-se um registro contendo seu nome e o número de diárias. Faça um algoritmo que imprima o nome e o total a pagar de cada pessoa e imprimir também o total ganho pelo hotel e o número total de diárias.} {O exercicio está feito para rodar com 5 entradas, pois duzentas seria inviável o teste, é só mudar onde tem 5 para 200.} Program Pzim ; var hospede:array[1..5] of string; diarias:array[1..5] of integer; i, dias:integer; soma:real;  Begin   for i:=1 to 5 do   begin   writeln('Digite os dados do apartamento No.: ',i);   writeln('Nome do Hospede : '); readln(hospede[i]); writeln('Diarias : '); readln(diarias[i]); ...

Divisores de um número

Program Pzim ; Var x,num,teste:integer; Begin     Writeln('Digite um numero:');              //solicita que seja digitado um numero     Read(Num);                                 //lê o número     Write ('São divisores de ',num,', :');     //exibe a mensagem uma vez     For x:=1 to num do                         //faz de 1 até o numero ( processo de divisão)         Begin                                //teste verifica se é divisor.     teste:=num mod X;               //um numero é divisor quando o resto é igual a zero     If teste=0 then         Write (X,', ');   ...

Exercicio 2 com matriz

Program Pzim ; {2. Faça um algoritmo em que o usuario informe os valores para uma matriz 4x4  e em seguida efetive a soma dos valores que estão abaixo da diagonal secundária. O algoritmo deve mostrar os valores que estão abaixo da diagonal secundária e sua soma. Ex.: 1-5-2-2 7-5-3-2 8-4-6-1 5-4-3-1 Valores a serem usados, mostrados e somados: - - - - - - -2 - -6-1 -4-3-1 } var m:array[1..4,1..4] of integer; i,j, soma:integer;  Begin  for i:=1 to 4 do   begin   for j:=1 to 4 do   begin writeln('Digite a matriz : ');          //recebe os elementos da matriz readln(m[i,j]);   end;   end; for i:=1 to 4 do   begin   for j:=1 to 4 do   begin   if ((i+j)>= 6) then                 // se i+j >= 6, = condição para o elemento pertencer   begin               ...

Exercicio 1 com matriz

Program Pzim ; var m:array[1..6,1..6] of integer; a,n,i,j,l,c:integer;  Begin  a:=1;  n:=1;  l:=1;  c:=6;   while a<4 do begin for i:=l to c do begin for j:=l to c do   begin m[i,j]:=n;   end;   end;   n:=n+1;   a:=a+1; l:=l+1;   c:=c-1; end;  for i:=1 to 6 do   begin   for j:=1 to 6 do   begin write(m[i,j],' ');   end;   writeln;   end;    End.

Digita um numero na Base10 e mostra na Base2 - (Converte Decimal em Binário)

{Elabore um algoritmo que o usuario forneça um número inteiro (que é decimal), calcule e mostre este numero em binario.} Program Pzim ; var binario:array[1..15]of integer; i,j,num,y:integer;  Begin      writeln('Digite um número : ');           {solicita que seja digitado um numero}      read(y);                                  {armazena o numero na variavel y}      num:=y;                                   {armazena a var Y na var NUM}      for i:=1 to 15 do          begin ...

Lê a media e diz se o aluno foi aprovado, reprovado ou está em recuperação

Program Pzim ; {Dado Nome e notas ( total de 6 ) alunos, faça um algoritmo que: a) Imprima Nome e média dos alunos aprovados com  Média > = 7.0. b) Imprima Nome e média dos alunos em recuperação com 5.0 >= Média <7.0. c) Imprima Nome e média dos alunos reprovados com Média <5.0 eu nao sei como faser para aparecer todos os nomes , por exemplo dos (aprovados).} var nome:array[1..6] of string;           {vetor onde vai ser armazenado os nomes} nota:array[1..6] of real;             {vetor onde vai ser armazenado as notas} i:integer;  Begin      for i:=1 to 6 do                 {for para entrada dos nados}         begin              write('Digite o nome : ');  ...

Digita 10 numeros e soma somente os numeros pares

{faça um algoritmo que escreva numeros na tela de 1 até 10 e depois some somente os numeros pares e exiba o resultado} Program Pzim ; var i, num:integer; soma:real;  Begin soma:=0;      for i:=1 to 10 do               {faz de 1 até 10}          begin              writeln('Digite um número: ' ); {solicita que digite um numero}              readln(num);                    {lê o numero}              clrscr;                          {limpa a tela a cada vez que digita um numero e dá enter...

Exercicio com função - soma

{Elabore um algoritmo que o usuário forneça um número inteiro positivo N e, atravês da função FORMULA(N), retorne o valor H, conforme abaixo: H = 1 + 1/2 + 3 + 1/4+...+(N + 1/N)} Program Pzim ; var n:integer; h:real; function formula(x:integer):real; var soma1,soma2:real; i:integer; begin     for i:=1 to x do         begin                                     {se i mod 2 for diferente de zero - IMPAR}             if (i mod 2 <> 0) then                 begin                     soma1:=(soma1+i);               ...

Pesquisa entre habitantes

{Foi realizada uma pesquisa entre 150 habitantes de uma cidade. de cada habitante foram coloetadas dos dados: IDADE, SEXO, RENDA FAMILIAR E NUMERO DE FILHOS. elabore um algoritmo que o usuario forneça estes dados. Calcule e mostre : = A média salarial entre os habitantes(entrevistados) = O total gasto em filhos, sabendo que cada habitante entrevistado dó podera gastar com ele mesmo e com seus filhos, onde a distribuição de renda deverar ser igual entre todos, por exemplo: Antonio tem 3 filhos e ganha R$ 1600,00, então cada um deles podera gastar R$ 400,00 ou seja, o gasto com os filhos fois de R$ 1200,00 = e a quantidade de mulheres com mais de 2 filhos e renda superior a 3 salarios minimos; salario = R$ 545,00} Program Pzim ; type r_hab = record idade:integer; sexo:string; sal:real; filhos:integer; end; var v_hab:array[1..5] of r_hab; qtmm2f, pessoas, qtdf, qtdh, i:integer; gpp, gpf, v_total:real;  Begin             ...

Vetor ordem crescente

Program Pzim ; {recebe 10 numeros inteiros e ordena de forma crescente} var vet:array[1..10] of integer; aux,i,j:integer;  Begin  aux:=0;   for i:=1 to 10 do   begin   writeln('Preencha o vetor de 10 posições : ');   read(vet[i]);   end;       for i := 10 downto 2 do              {faz o for com i de 10 até 2, decrementando, isto é 10, 9, 8, ...}   begin   for j := 1 to i-1 do         {faz o for com j de 1 até a posição atual do i menos 1}   begin   if vet[j] > vet[j+1] then {se vet, na posição j, for maior que vet na posição j+1, faça}   begin   aux := vet[j]; {a var aux, recebe o valor de vet na posição j}   vet[j] := vet[j+1]; {vet na posição j, recebe o valor de vet na posição seguinte, que seria j + 1}   vet[j+1] := aux; {e vet na posição j mais 1, recebe o v...

Múltiplos de 2 e 3

{faca um programa que carregue um vetor com sete numeros inteiro, calcule e mostre: os numeros multiplos de 2; os numeros multiplos de 3; os numeros multiplos de 2 e 3.} Program Pzim ; var num: array [1..7] of integer; mult2, mult3, mult2e3:integer; i: integer;  Begin   {a entrada de dados deve ser feita dentro de um FOR}     for i := 1 to 7 do   begin   writeln ('Digite o ',i,'o. numero: ');        {solicita e recebe os numeros para preencher o vetor}   readln (num[i]);   end;   clrscr;                         {cada verificação deve ser feita dentro de um FOR separado}             writeln('Os números multiplos de 2, são : ');      {exibe a mensagem "uma única vez"} for i:= 1 to 7 do {faz de 1 até 7} begin if (num[i] mod 2 = 0 ) then begin mult2 := nu...

Conta uma determinada letra

{recebe uma palavra ou frase, e uma letra, e diga quantas letras tem na cadeia de caracteres} Program Pzim ; var frase:string; {variavel que recebe a cadeia de caracteres} letra:char; i, conta, j:integer; { "i", contador do for, "j" recebe a quant. de                 caracteres da cadeia e conta, recebe a quantidade de letraas a}  Begin     writeln('Digite uma palavra ou frase : ');   {solicita que digite os caracteres}     readln(frase);        {usar o readln, pois o read para no primeiro espaço e em frases}     writeln('Digite uma letra');               {nçao ia receber todos os caracteres}     read(letra);      j:=length(frase);    {a função length vai contar quantos caractes existe na ...

Inteiro para caractere

as variaveis são iniciadas no início do programa: VAR conta:integer; //variavel numérica t_conta:string; //variavel de texto str(conta,t_conta);{converte o valor que tem na variavel conta em texto e salva na variavel t_conta}

3 notas com media ponderada

Program Pzim ; {4- Escreva um programa que leia o código de um aluno e suas três notas. Calcule a média ponderada do aluno, considerando que o peso para a maior nota seja 4 e para as duas restantes, 3. Mostre o código do aluno, suas três notas, a média calculada e uma mensagem "APROVADO" se a média for maior ou igual a 5 e "REPROVADO" se a média for menor que 5. } var cod:integer; n1, n2, n3, nm1, nm2, nm3, media:real; Begin media:=0; writeln('Digite o código do aluno : '); read(cod); write('digite a 1o. nota : '); read(n1); write('digite a 2o. nota : '); read(n2); write('digite a 3o. nota : '); read(n3); {aproveitando a mesma estrutura para ordenar a maior nota, as outras duas não tem importançia na ordem, pois tem o mesmo peso} if ((n1 > n2) and (n1 > n3)) then begin nm1:=n1; nm2:=n2; nm3:=n3; end else if ((n2 > n1) and (n2 > n3)) then begin nm1:=n2; nm2:=n1; nm3:=n3; end else if ((n3 ...

idade de dias para ano/mes/dia

Program Pzim ; {2- Construa um programa que leia a idade de uma pessoa expressa em dias e expresse-a em anos, meses e dias.} var idade, anos, mes, meses, dias:integer; {todas variaveis do tipo inteiro, uma pra receber a idade em dias uma pra ano, duas pra meses e uma pra dia, duas pra meses, pois precisa de uma auxiliar} {a questão vai ser feita considerando o mes com 30 dias, consequentemente o ano com 360 dias} Begin writeln('Digite a idade em dias : '); read(idade); {recebe a idade em dias} dias:=(idade mod 30); {mod é o resto da divisão, entao se dividir a quant de dias por 30 o resto é a quantidade de dias } mes:=(idade div 30); {div é a parte inteira da divisão, então quando eu divido a quant. de dias por 30, me dá a quant de meses} meses:=(mes mod 12); {mod é o resto da divisão. então se dividir a quant de meses por 12, o resto é a quantidade de meses} anos:=(idade div 360); {div é a parte inteira da divisão, então quando em divido a quant. de dias ...

Programa para calcular o maior e o menor de 3 números inteiros

Program Pzim ; {Escreva um programa para calcular o maior e o menor de três números inteiros.} var n1, n2, n3, maior, menor:integer; {varriaveis para receber os 3 numeros e o maior e o menor} Begin writeln('Digite o 1o. número : '); read(n1); writeln('Digite o 2o. número : '); read(n2); writeln('Digite o 3o. número : '); readln(n3); {compara dois a dois pra confirmar quem é o maior} if ((n1 > n2) and (n1>n3)) then begin { o primeiro com o 2º e o 3º} maior:=n1; end; if ((n2 > n1) and (n2>n3)) then { o segundo com o 1º e o 3º} begin maior:=n2; end; if ((n3 > n1) and (n3>n2)) then {por ultimo o terceiro com o 1º e o 2º} begin maior:=n3; end; if ((n1 < n2) and (n1<n3)) then begin menor:=n1; end; if ((n2 < n1) and (n2<n3)) then {a mesma coisa com o menor} begin menor:=n2; end; if ((n3 < n1) and (n3<n2)) then begin menor:=n3; end; writeln(' o maior número é : ',maior,', e o menor é ...

Operação Aritmética

Program Pzim ; {5. Escreva um programa que leia um carácter '+', '-', '*' ou '/' que indica uma operação aritmética a efetuar com os dois números que são introduzidos a seguir e apresente o resultado da operação. }  var sinal:char; n1, n2:integer;   res:real;  Begin  writeln('Qual operação deseja realizar ? ');  writeln(' soma = "+", subtração = "-", Multiplicação "*" ou divisão "/"');  readln(sinal);  writeln('Digite o 1o. Número : ');  readln(n1);  writeln('Digite o 2o; Número : ');  readln(n2); if (sinal='+') then begin res:=n1+n2; writeln('O resultado da soma é : ',res:1:2); end; if (sinal='-') then begin res:=n1-n2; writeln('O resultado da soma é : ',res:1:2); end; if (sinal='*') then begin res:=n1*n2; writeln('O resultado da soma é : ',res:1:2); end; if (sinal=...

Ordenamento

Program Pzim ; {2. Escrever um programa que lê um conjunto de 4 valores i, a, b, c, onde i é um valor inteiro e positivo (faça a validação) e a, b, c, são quaisquer valores reais e os escreva. A seguir: a) Se i=1 escrever os três valores a, b, c em ordem crescente. b) Se i=2 escrever os três valores a, b, c em ordem decrescente. c) Se i=3 escrever os três valores a, b, c de forma que o maior entre a, b, c fique entre os outros dois.} var i:integer; n1, n2, n3, a, b, c:real;  Begin  writeln('Digite o código do ordenamento (1, 2 ou 3) : ');  writeln(' 1 - para ordem CRESCENTE');  writeln(' 2 - para ordem DECRESCENTE');  writeln(' 3 - para ordem MAIOR NO MEIO');    read(i);    if ((i>0) and (i<4)) then               {condição pra fazer entre 1 e 3}     begin                            {se atender a condi...

programa para somar os N primeiros termos

Program Pzim ; {Faça um programa para somar os N primeiros termos da série abaixo: 1 + 3/1 + 5/3 + 7/5 + 9/7 + ...} var n,i:integer; n1, n2, soma:real; {variaveis}  Begin  n1:=3;{inicia as variaveis com 3 e 1, }  n2:=1;  soma:=1; {inicia a soma com 1, por isso o for, faz até n-1, pois como o primeiro termo é um, ele já vem incrementado}   write('Digite um numero : ');   readln(n);   for i:=1 to n-1 do {faz de 1 até n-1, pois a soma é iniciado já com 1}   begin soma:=soma+(n1/n2); writelnl('1'); writeln(n1,'/',n2);  {essa linha é facultativa, é só pra visualizar as divisoes} n1:=n1+2; {incrementa n1 mais 2} n2:=n2+2; {incrementa n2 mais 2}   end;      writeln('A soma dos ',n,' termos de "1+ 3/1 + ... N" é: ',soma); {mostra a resposta}  End.

Divisores

Program Pzim ; {1. Escrever um programa para ler um número inteiro e maior ou igual a 4 (faça a verificação), e mostre todos os seus divisores exceto 1 e o numero lido.} var num, i:integer;  Begin  writeln('digite um numero maior que 4 : ');  {solicita que seja digitado um numero}  readln(num);                                 {lê o numero digitado}   if (num>=4) then                         {se numero for igual ou maior que 4 entra no FOR}   begin   for i:=2 to num-1 do             {faz de 2 até o numero lido}   begin   if (num mod i=0) then     {se o numero for divisivel ...}   begin   write(i,', ');   {... exibe os numeros}   end;   end;     end      ...

Conta as letras A ou a

{contar a quantidade de letras "a" existente na cadeia de caracteres} Program Pzim ; var frase:string; {variavel que recebe a cadeia de caracteres} i, conta, j:integer; { "i", contador do for, "j" recebe a quant. de                 caracteres da cadeia e conta, recebe a quantidade de letraas a}  Begin     writeln('Digite uma palavra ou frase : ');   {solicita que digite os caracteres}     readln(frase);        {usar o readln, pois o read para no primeiro espaço e em frases                     nçao ia receber todos os caracteres}      j:=length(frase);    {a função length vai contar quantos caractes existe na variavel                         frase ...

Questão 3 da prova

Program Pzim ; var a, b, pote:integer; function pot(x,y:integer):integer; var i,z:integer;   begin     z:=1;     {inicio a var z, com valor 1, pois se colocar 0, qq numero multiplicado por zero dá zero}       for i:=1 to y do    {faz de um até y, que recebe o valor de b no program principal}          begin              z:=z*x;          end;      pot:=z; {pot, que é a função, recebe o valor de z} end; procedure primo(j:integer); var                        {para ser primo o numero so pode ser divisivel por 1 e por ele mesmo: cont<=2} cont, i:integer; begin cont:=0;    // inicia o contador com zero     for i...

Questão 4 da prova

Program Pzim ; {FAÇA UM ALGORITMO PARA O USUARIO FORNECER O CÓDIGO, O SEXO (M OU F) E O NUMERO DE HORAS/AULA DADAS NO MES PELO PROFESSOR DE UMA ESCOLA, SABENDO QUE O PROFESSOR GANHA R$ 12,50 HORA/AULA E QUE A ESCOLA POSSUI 10 PROFESSORES MOSTRE A) UMA LISTAGEM CONTENDO O CODIGO, O SLARI BRUTO E O SALARIO LIQUIDO DE TODOS OS PROFESSORES B) A MEDIA ARITMETICA DOS SALARIOS BRUTO DOS PROFESSORES DO SEXO FEMININO} type     r_professor=record         cod:integer;         sexo:char;         haula:integer;     end; var v_professor:array[1..4] of r_professor; h_aula, pf, i:integer; salbruto,salliq,desc, salf, somasf, mediasf:real; {se houver variaveis para inicia, isso deve ser feito no inicio do programa}  Begin           pf:=0;          salf:=0;       ...

Exercicio 5 de funções

Program Pzim ; {criar um programa para ler dois numeros e chamar uma função que retorne se os valores recebidos são iguais ou diferentes.  o programa será finalizado se por digirado um valor negtivo para o primeiro numero} var num1, num2:integer; r_compara:string; //inicio da função function compara(x1,x2:integer):string;     begin         if (x1=x2) then             compara:='Os números são iguais'         else             compara:='Os números são diferentes'     end; //fim da função //inicio do algoritmo  Begin      writeln('Digite o primeiro número : ');      readln(num1);      if (num1>=0) then          begin              writel...

Exercicio 4 de funções

{Desenvolver um programa para ler dois numeros e chamar uma  função que retorna a potência do 1º numro elevado ao 2º.} Program Pzim ; var n1,n2:integer; r_pot:real; //inicio da função function pot(x1,x2:integer):real;  // recebe variaveis inteiras e a resposta é do tipo real     begin         pot:= exp(x2*ln(x1));    // função de potencia existente no pascal        end; //fim da função //inicio do algoritmo  Begin      writeln('Digite o primeiro número : ');         // solicita o primeiro numero      readln(n1);                                     // recebe n1      writeln('Digite o segu...

Exercicio 3 de funções

Program Pzim ; {Escrever um programa que, utilizado de funções, leia um valor e retorne a) se é multiplo de 5 ou não  -retorno string; b) fatorial (1*2*...*n) retorno integer.} {variaveis globais} var r_fatorial, num:integer; r_multiplo:string; //inicio da função multiplo function multiplo(x:integer):string;   // a função recebe um valor de inteiro e retorna ma string     begin         if (x mod 5 = 0) then         // verifica se é multiplo de 5, se fim             multiplo:='O número é multiplo de 5'    //a função multiplo recebe a frase como resposta         else                                     ...

Exercicio 2 de funções

Program soma ; {Fazer um programa para ler três  numeros e chamar uma função que retorna a soma dos numeros} {variaveis globlais, usadas no algoritmo} var n1,n2,n3:integer;     // variaveis do numeros que serão digitados r_soma:real;        // variavel que recebe o retorno da função {lembrando que primeiro fazemos o algoritmo, depois é que inserimos a função     recomendamos o uso de rascunho e detalhar cada parte antes de montar o programa}     //inicio da função function soma(x1,x2,x3:integer):real;         begin             soma:=(x1 + x2 + x3);         end; //fim da função {começamos por aqui, depois fazemos a função     a função está em cima, pois ela deve está entre as variaveis e o begin do algoritmo} //inicio do algoritmo  Begin      ...

Exercicio 1 de funções

Program cubo ; {Fazer um programa para ler um número e chamar uma função que retorna o cubo do numero} var num:integer;    //variavel de entrada que recebe o numero digitado r_cubo:real;    //variavel de saida que recebe a resposta da função //inicio da função function cubo(n:integer):real;     begin         cubo:= exp(3*ln(n));     end; //fim da função e incio do algoritmo //se inicia pelo programa, pedindo pra digitar um número e depois lê esse número  Begin      writeln('Digite um número : ');      readln(num);         r_cubo:=cubo(num);  //a variavel recebe o resultado e chama a função         writeln('O cubo no número : ',num, ' é ',r_cubo:1:2); // exibe o resultado  End.

Exercicio 4 de procedimento

Program Pzim ; {Escrever um programa que, utilizado de procedimentos, leia um valor e mostre : a) seu fatorial b) seu quadrado garante que o numero lido seja positivo.} var    //variaveis globais num:integer; {a partin daqui é o procedimento de fatorial } procedure fatorial(x:integer); var fat:integer; i:integer; begin     fat:=1; // inicia-se a variavel com 1, pois por padrão seria zero, e se voce multiplica qualquer num por zero dá sempre zero     for i:=1 to x do         begin             fat:=fat*i;         end;     writeln('O fatorial do numero ', x, ' é : ',fat);        //aqui mostra o resultado end; {a partin daqui é o procedimento de quadrado } procedure quadrado(y:integer); var quad:integer; begin     quad:=y*y;     ...

Exercicio 3 de procedimento

Program Pzim ; {Fazer um programa para ler um número (N) e chamar um procedimento que mostra o somatório de 1 até N, garantir que o número seja positivo} var         //variaveis globais n:integer; {aqui é a varviavel go programa - variavel global} procedure soma(x:integer); var           //variaveis locais i, somas:integer;              // aqui são variaveis que irão funcionar someente no procedimento,                         // não pode ter variaveis com mesmo nome no programa e no procedimento begin                         // o procedimento é iniciado com um begin     for i:=1 to x do     ...

Exercicio 2 - procedure

Program Pzim ; var num,i:integer; procedure somar(x :integer);        begin         for i:=1 to 10 do    //a variavel i é global, por isso não é preciso iniciar ela aqui no procedimento             begin                 writeln(  x, ' + ', i, ' = ', i+x ); // mostra a tabuada             end;                        end;  Begin      {inicio do programa}     writeln('Digite um número : ');      //solicita que entre com um número     readln(num);                    //recebe o numero     clrscr;...