Funções strings e matemáticas

Publicado por Ivan Rocha 03/12/2006

[ Hits: 7.606 ]

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

Metodo de Ordenacion : Burbuja

maior elemento de uma matriz

controle de locadora

programa pra somar e tirar média

Maior e menor


  

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