Prévia do material em texto
( Resposta dos Exercícios Propostos Livro: Algoritmo e Programação de Computadores Autores: Dilermando Piva Junior, Gilberto Shigueo Nakamiti, Angela de Mendonça Engelbrecht e Francisco Bianchi. Editora Campus / Elsevier, 2012. ) CAPÍTULO 6 06.01 Determinar se um número P lido é par ou não. 06.01 - VisuAlg algoritmo "06.01" var P: inteiro inicio // Seção de Comandos escreva("Digite um numero inteiro ..: ") leia(P) se (P%2 <= 0) entao escreval("O numero" , P, " e' PAR") senao escreval("O numero" , P, " NAO e' PAR") fimse fimalgoritmo 06.01 - Pascal program SeisUm; uses Crt; var P: integer; begin { Seção de Comandos} write('Digite um numero inteiro ..: '); readln(P); if (P mod 2 <= 0) then begin writeln('O numero' , P, ' e PAR'); end else begin writeln('O numero' , P, ' NAO e PAR'); end; end. 06.01 - C #include <stdio.h> #include <conio.h> void main() { int P; printf("Digite um numero inteiro ..: "); scanf("%d", &P); if (P%2 == 0) printf("\nO numero %d e' PAR",P); else printf("\nO numero %d NAO e' PAR",P); getch(); } 06.01 - Java import java.util.*; public class SeisUm { public static void main (String[] arg) { int P; Scanner entrada_dado = new Scanner (System.in); System.out.print ("Digite um numero inteiro ..: "); P = entrada_dado.nextInt(); if (P%2 == 0) System.out.print ("\nO numero "+P+" e' PAR"); else System.out.print ("\nO numero "+P+" e' NAO E' PAR"); } } 06.01 - PHP <?php echo"Digite um numero inteiro ..: "; $P = 8; if ($P%2 == 0) echo"\nO numero $P e' PAR"; else echo"\nO numero $P NAO E' PAR"; ?> 06.02 Ler um caractere e imprimir se é: - um dígito (0-9); - letra maiúscula (A-Z); - letra minúscula (a-z); - espaço ou outro símbolo. Para a solução utilizar o código ASCII dos caracteres. 06.02 - VisuAlg algoritmo "06.02" var C : caractere inicio // Seção de Comandos escreva("Digite um caractere qualquer ..: ") leia(C) se (C >= "0") e (C <= "9") entao escreval("O caractere ",C, " e um DIGITO") senao se (C >= "A") E (C <= "Z") entao escreval("O caractere ",C, " e uma LETRA MAIUSCULA") senao se (C >= "a") E (C <= "z") entao escreval("O caractere ",C, " e uma LETRA MINUSCULA") senao escreva("\nO caractere ", C, " e um ESPACO ou SIMBOLO") fimse fimse fimse fimalgoritmo 06.02 - Pascal program SeisDois; uses Crt; var C : char; begin write('Digite um caractere qualquer ..: '); readln(C); if (C >= '0') and (C <= '9') then begin writeln('O caractere ',C, ' e um DIGITO'); end else begin if (C >= 'A') and (C <= 'Z') then begin writeln('O caractere ',C, ' e uma LETRA MAIUSCULA'); end else begin if (C >= 'a') and (C <= 'z') then begin writeln('O caractere ',C, ' e uma LETRA MINUSCULA'); end else begin writeln('O caractere ', C, ' e um ESPACO ou SIMBOLO'); end; end; end. 06.02 - C #include <stdio.h> #include <conio.h> void main() { char caractere; printf("Digite um caractere qualquer ..: "); scanf("%c", &caractere); if (caractere >= '0' && caractere <= '9') printf("\nO caractere %c eh um DIGITO",caractere); else if(caractere >= 'A' && caractere <= 'Z' ) printf("\nO caractere %c eh uma LETRA MAIUSCULA",caractere); else if(caractere >= 'a' && caractere <= 'z') printf("\nO caractere %c eh uma LETRA MINUSCULA",caractere); else printf("\nO caractere %c eh um ESPACO ou SIMBOLO",caractere); getch(); } 06.02 - Java import java.util.*; public class SeisDois { public static void main (String[] arg) { String S; char caractere; Scanner entrada_dado = new Scanner (System.in); System.out.print ("Digite um caractere qualquer ..: "); S = entrada_dado.next(); caractere = S.charAt(0); if (caractere >= '0' && caractere <= '9') System.out.print ("\nO caractere "+caractere+" eh um DIGITO"); else if(caractere >= 'A' && caractere <= 'Z' ) System.out.print ("\nO caractere "+caractere+" eh uma LETRA MAIUSCULA"); else if(caractere >= 'a' && caractere <= 'z') System.out.print ("\nO caractere "+caractere+" eh uma LETRA MINUSCULA"); else System.out.print ("\nO caractere "+caractere+" eh um ESPACO ou SIMBOLO"); } } 06.02 - PHP <?php echo"Digite um caractere qualquer ..: "; $caractere = '&'; if ($caractere >= '0' && $caractere <= '9') echo"\nO caractere $caractere eh um DIGITO"; else if($caractere >= 'A' && $caractere <= 'Z' ) echo"\nO caractere $caractere eh uma LETRA MAIUSCULA"; else if($caractere >= 'a'&& $caractere <= 'z') echo"\nO caractere $caractere eh uma LETRA MINUSCULA"; else echo"\nO caractere $caractere eh um ESPACO ou SIMBOLO"; ?> 06.03 Um sistema de equações lineares da forma: ax + by = c dx + ey = f pode ser resolvido utilizando-se as seguintes fórmulas: ler o conjunto de coeficientes ( a, b, c, d, e, f) e imprimir a solução x e y. Antes de efetuar a divisão, verificar se ela pode ser feita. Em caso negativo, imprimir uma mensagem de que o sistema não tem solução. x = (ce - bf) / (ae - bd) y = (af - cd) / (ae - bd) Testar para : 2x + y = 7 x - y = -1 a = 2, b = 1, c = 7, d = 1, e = -1 e f = -1 Solução: x = 2 e y = 3 06.03 - VisuAlg algoritmo "06.03" // como na linguagem VisuAlg a letra e é utilizada como conector lógico e // portanto é considerada palavra reservada, no exercício foi utilizado ee. var denominador, x,y: real a,b,c,d,ee,f: real inicio // Seção de Comandos escreva("Digite os coeficientes do sistema (a b c d e f): ") leia(a, b, c, d, ee, f) denominador <- (a*ee - b*d) se(denominador = 0) entao escreval("O sistema nao tem solucao!!") senao x <- (c*ee - b*f)/denominador y <- (a*f - c*d)/ denominador escreval("x = ", x, " y = ",y) fimse fimalgoritmo 06.03 - Pascal program SeisTres; uses Crt; var denominador, x,y: real; a,b,c,d,e,f: real; begin { Seção de Comandos} write('Digite os coeficientes do sistema (a b c d e f): '); readln(a, b, c, d, e, f); denominador := (a*e - b*d); if(denominador = 0) then begin writeln('O sistema nao tem solucao!!'); end else begin x := (c*e - b*f)/denominador; y := (a*f - c*d)/ denominador; writeln('x = ', x:7:2, ' y = ',y:7:2); end; end. 06.03 - C #include <stdio.h> #include <conio.h> void main() { float a, b, c, d, e, f; float denominador, x, y; printf("Digite os coeficientes do sistema (a b c d e f): separados por um espaco\n"); scanf("%f%f%f%f%f%f", &a, &b, &c, &d, &e, &f); denominador = (a*e - b*d); if(denominador == 0) printf("\nO sistema nao tem solucao!!"); else { x = (c*e - b*f)/denominador; y = (a*f - c*d)/ denominador; printf("x = %7.2f y = %7.2f", x,y); } getch(); } 06.03 - Java import java.util.*; public class SeisTres{ public static void main (String[] arg) { float a, b, c, d, e, f; float denominador, x, y; Scanner entrada_dado = new Scanner (System.in); System.out.print ("Digite os coeficientes do sistema (a b c d e f): separados por um espaco\n"); a = entrada_dado.nextFloat(); b = entrada_dado.nextFloat(); c = entrada_dado.nextFloat(); d = entrada_dado.nextFloat(); e = entrada_dado.nextFloat(); f = entrada_dado.nextFloat(); denominador = (a*e - b*d); if(denominador == 0) System.out.print ("\nO sistema nao tem solucao!!"); else { x = (c*e - b*f)/denominador; y = (a*f - c*d)/ denominador; System.out.print ("x = "+x+"\ny = "+y); } } } 06.03 - PHP <?php $a = 2; $b = 1; $c = 7; $d = 1; $e = -1; $f = -1; $denominador = ($a*$e - $b*$d); if($denominador == 0) echo"\nO sistema nao tem solucao!!"; else { $x = ($c*$e - $b*$f)/$denominador; $y = ($a*$f - $c*$d)/ $denominador; echo"x = $x \ny = $y"; } ?> página: 1