Funções strings e matemáticas

Publicado por Ivan Rocha 03/12/2006

[ Hits: 7.502 ]

Homepage: http://homes.dcc.ufba.br/~ivan062/bahia

Download funcoes_strings_matematicas




Script que executa funções strings e matemáticas, dependendo da opção escolhida.

  



Esconder código-fonte

program funcoes_matematicas_e_strings;
uses crt;
var op: integer;  // op= recebe a opcao desejada pelo usuario
    num: real;
    num1,num2: integer;
    nome,nome1: string;
begin
repeat   // laco de repeticao do programa
  repeat   // laco de repeticao das funcoes matematicas
   clrscr;  // limpa a tela
   {O menu de opcoes eh impresso na tela }
   writeln('**********************************');
   writeln('       FUNCOES MATEMATICAS');
   writeln('**********************************');
   writeln;
   writeln('         MENU DE OPCOES');
   writeln;
   writeln('01 - Valor Absoluto');
   writeln('02 - Truncar valor');
   writeln('03 - Funcao Cosseno');
   writeln('04 - Funcao Seno');
   writeln('05 - Funcao arco tangente');
   writeln('06 - Parte fracionaria');
   writeln('07 - Logaritmo natural');
   writeln('08 - Valor de PI');
   writeln('09 - Potencia e^x');
   writeln('10 - Potencia x^2');
   writeln('11 - Raiz quadrada');
   writeln('12 - Aproximar numero');
   writeln('13 - Funcoes String');
   writeln;
   //textcolor(2+16);
   write('Digite a opcao desejada: ');
   readln(op);
   case op of   // condicional que relaciona a opcao escolhida pelo usuario a determinada funcao
      1: begin
           write('Digite um valor numerico: ');
           readln(num);
           num:= abs(num);    // calcula o valor absoluto da variavel num
           write('O valor absoluto deste numero e: ', num:2:2);
           readkey;   // e necessario pressionar qualquer tecla para encerrar esse bloco de comandos
         end;
      2: begin
           write('Digite um valor para ser truncado: ');
           readln(num);
           num1:= trunc(num);     // trunca o valor da variavel num e armazena na variavel num1
           write('O valor truncado do numero e: ', num1);
           readkey;   // analogo a anterior
         end;
      3: begin
           write('Digite o angulo(em radiano) para cosseno: ');
           readln(num);
           num:=cos(num);  // calcula o valor do cosseno de determinado angulo num (em radianos)
           write('O cosseno deste angulo e: ', num:2:2);
           readkey;  // analogo a anterior
         end;
      4: begin
           write('Digite o angulo(em radiano) para seno: ');
           readln(num);
           num:=sin(num);   // calcula o seno de num (em radianos)
           write('O seno deste angulo e: ', num:2:2);
           readkey;   // analogo a anterior
         end;
      5: begin
           write('Digite o valor da tangente para arco: ');
           readln(num);
           num:=arctan(num);   // calcula o arco tangente de num (imprime o resultado em radianos)
           write('O arco tangente deste valor e(radianos): ', num:2:2);
           readkey;
         end;
      6: begin
           write('Digite um valor para retorno da parte fracionaria: ');
           readln(num);
           num:=frac(num);    // armazena a parte fracionaria de num em num
           write('A parte fracionaria deste numero e: ', num:2:4);
           readkey;
         end;
      7: begin
           write('Digite um valor para saber seu logaritmo natural: ');
           readln(num);
           num:= ln(num);    // calcula o logaritmo natural de num
           write('O logaritmo natural deste valor e: ',num:2:2);
           readkey;
         end;
      8: begin
           num:=PI;
           write('O valor de PI e: ', num:2:3);   // imprime o valor de PI
           readkey;
         end;
      9: begin
           write('Digite o expoente ao qual deseja elevar "e" (num. neperiano): ');
           readln(num);
           num:= exp(num);      // calcula e^num e armazena em num
           write('O valor dessa potencializacao e: ', num:2:2);
           readkey;
         end;
      10:begin
           write('Digite um numero(inteiro) ao qual deseja elevar ao quadrado: ');
           readln(num1);
           num1:= sqr(num1);  // calcula num1^2 e armazena em  num1
           write('O valor da operacao e: ',num1);
           readkey;
         end;
      11:begin
           write('digite um numero(inteiro positivo) para extair raiz quadrada: ');
           readln(num1);
           num:= sqrt(num1);   // calcula a raiz quadrada de num1
           write('A raiz quadrada deste numero e: ', num:2:2);
           readkey;
         end;
      12:begin
           write('Digite um valor ao qual deseja aproximar: ');
           readln(num);
           num1:=round(num);     // arredonda o valor de num
           write('O valor aproximado deste numero e: ',num1);
           readkey;
         end;
      end;   // encerra case
  until op=13;   // encerra o laco de repeticao das funcoes matematicas
  repeat      // laco de repeticao para funcoes string
   clrscr;  // limpa a tela
   {Imprime o menu de opcoes na tela}
   writeln('**********************************');
   writeln('          FUNCOES STRINGS');
   writeln('**********************************');
   writeln;
   writeln('         MENU DE OPCOES');
   writeln;
   writeln('14 - Concatenar cadeias de caracteres');
   writeln('15 - Copiar n caracteres a partir de posicao especificada');
   writeln('16 - Deletar n caracteres a partir de posicao especificada');
   writeln('17 - Inserir caracteres a partir de posicao especifica');
   writeln('18 - Saber numero de caracteres de uma cadeia de caracteres');
   writeln('19 - Saber a posicao da primeira ocorrencia de determinado caractere');
   writeln('20 - Retornar as funcoes matematicas');
   writeln('21 - Sair do programa');
   writeln;
   write('Digite a opcao desejada: ');
   readln(op);
   case op of    // condicional que relaciona a opcao escolhida pelo usuario a determinada funcao
       14: begin
             write('Digite a primeira cadeia de caracteres: ');
             readln(nome);
             write('Digite a segunda cadeia de caracteres: ');
             readln(nome1);
             nome:= concat(nome,nome1);    // concatena nome1 em nome
             write('Cadeias Conctenadas: ',nome);
             readkey;
          end;
       15: begin
             write('Digite uma cadeia de caracteres: ');
             readln(nome);
             write('Digite a posicao a partir da qual deseja copiar caracteres: ');
             readln(num2);
             write('Digite a quantidade de caracteres que deseja copiar: ');
             readln(num1);
             nome:= copy(nome,num2,num1);     // copia de nome a partir da posicao num2 a quantidade num1 de caracteres
             write('Esta eh a copia que voce realizou: ',nome);
             readkey;
          end;
       16: begin
             write('Digite uma cadeia de caracteres: ');
             readln(nome);
             write('Digite a posicao a partir da qual deseja deletar caracteres: ');
             readln(num2);
             write('Digite a quantidade de caracteres que deseja delatar: ');
             readln(num1);
             delete(nome,num2,num1);   // deleta de nome a partir da posicao num2 a quantidade num1 de caracteres
             write('Esta eh a cadeia de caracteres depois da operacao deletar: ',nome);
             readkey;
          end;
       17: begin
             write('Digite uma cadeia de caracteres: ');
             readln(nome);
             write('Digite a posicao a partir da qual deseja inserir caracteres: ');
             readln(num1);
             write('Digite os caracteres que deseja inserir: ');
             readln(nome1);
             insert(nome1,nome,num1);     // insere em nome1 os caracteres de nome a partir da posicao num1
             write('Esta eh a cadeia de caracteres depois da operacao inserir caracteres: ',nome);
             readkey;
          end;
       18: begin
             write('Digite um uma cadeia de caracteres para saber o numero de caracteres contidos: ');
             readln(nome);
             num1:= length(nome);    // calcula o numero de caracteres de nome
             write('O numero de caracteres desta cadeia de caracteres eh: ',num1);
             readkey;
          end;
       19: begin
             write('Digite um cadeia de caracteres: ');
             readln(nome);
             write('Digite o caractere que deseja procurar: ');
             readln(nome1);
             num1:= pos(nome1,nome);   // calcula a posicao da primeira ocorrencia de nome1
             if num1=0 then
             write('Nao exsite estes caracteres na frase!')
             else
             write('A primeira ocorrencia deste caractere eh na posicao: ',num1);
             readkey;
          end;
      end;  // encerra case
  until (op=20) or (op=21);   // encerra o laco de repeticao das funcoes strings
until op=21;   // encerra o programa
writeln;
write('Finalizando...');
delay(1000);    // contagem de tempo, neste caso 1000 milesimos de segundos
end.

Scripts recomendados

pares ou impares

maior elemento de uma matriz

Mostrar maior e menor

Conjuntos

Calculadora básica em Pascal


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts