Buscar

Cap06 - Respostas dos Exercícios Propostos Livro Algoritmos e Programação de Computadores Autores JR., Dilermando

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