Pular para o conteúdo principal

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                                          // se não
            multiplo:='O número NÃO é multiplo de 5'    //recebe a frase informando que não
    end;
   
   
//inicio da função fatorial
function fatorial(y:integer):integer;       // a funçaõ recebe e retorna um valor de inteiro
var
fat,i:integer;
    begin
    fat:=1;
        for i:= 1 to y do
              begin
                    fat:= fat * i;
               end;
     fatorial:=fat;
    end;
   
   
//fim das funçoes
//inicio do algoritmo

{quando fazemos algoritmos com funções e procedimentos devemos primeiro começar perlo algoritmo, depois
é que fazemos as funções e ou procedimentos }

Begin
    writeln('Digite um número: ');    // solicita que seja digitado um numero
    readln(num);                    // recebe o numero digitado
    r_multiplo:=multiplo(num);         // atribui a variavel r_multiplo o valor retornado da função multiplo
    r_fatorial:=fatorial(num);         // atribui a variavel r_fatorial o valor retornado da função fatorial
                        {em função, ao mesmo tempo chamamos a função e atribuimos o resultado
                        a uma varivel, esse resultado pode ter a variavel do mesmo tipo ou de tipo diferente}
    writeln(r_multiplo);    //exibe os resultados
    writeln('O fatorial de ',num, ' é : ',r_fatorial);
End.

Postagens mais visitadas deste blog

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 ...

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.

Exercicio 4 de Heterogenea

Program Pzim ; {Faça um algoritmo que leia 7 produtos, contendo codigo, nome, quantidade, preço. No final, imprima os produtos que tenha mais do que 5 unidades.} type r_produto = record     cod:integer;     nome:string;     quant:integer;     preco:real; end; var     v_produto:array [1..3] of r_produto;     i, qmais5:integer;  Begin  qmais5:=0;     for i:=1 to 3 do         begin             writeln('ENTRE COM OS DADOS DOS PRODUUTOS');             writeln('_______________________________');             writeln(' ',I,'o. Produto ');             writeln('_______________________________');             writ...