Logo Passei Direto
Buscar

Lista6_Modularizacao

User badge image
Gabriel Silva

em

Ferramentas de estudo

Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

Universidade Católica de Pernambuco 
Centro de Ciências e Tecnologia 
Ciência da Computação 
Disciplina: Introdução a Programação I 
Data de entrega: 27/10/2015
Aluno: José Gabriel Vicente das Neves da Silva 
Prof° Mozart Gomes 
2ª Lista de Exercícios com Modularização (Procedimentos e Funções) 
 
1) Desenvolva um programa para calcular o valor de funções trigonométricas. Ofereça para o usuário um menu com as opções: 
----------------------------------- 
Escolha a função trigonométrica: 
– seno 
– cosseno 
– tangente 
----------------------------------- 
Use as Séries de Taylor para realizar os cálculos do seno e cosseno. Solicite ao usuário o valor do ângulo em graus. Observe que as Séries de Taylor trabalham com os ângulos em radianos. A quantidade de termos deve ser solicitada no programa principal. 
sen(x) = x − x3/3! + x5/5! − ⋯, ∀x∈R 
cos(x) = 1 − x2/2! + x4/4! − ⋯,∀x∈R 
tg(x) = sen(x)/cos(x) 
Faça uma função para exibir o menu, e mais 3 funções, uma para cada operação. Cada uma dessas 3 funções deverá receber o ângulo (em radianos) e retornar o resultado da função trigonométrica. 
Faça também uma função para converter um ângulo de graus para radianos. 
A função para calcular a tangente deve usar as funções seno e cosseno já construídas. 
2) Faça um procedimento que implemente o jogo da senha (para 2 pessoas). Esse procedimento deve apresentar as seguintes funcionalidades: 
O jogador 1 digita uma senha (valor inteiro entre 1 e 100, inclusivos) sem o conhecimento do jogador 2. 
Não permitir a entrada de valores fora da faixa especificada; 
O jogador 2 tem 5 tentativas para descobrir a senha; 
Se o valor digitado em uma tentativa tiver uma diferença igual a 1 (para mais ou menos) para a senha, o programa deve avisar que “TÁ QUENTE!”. 
• Exemplos: 
 Senha 43 e valor digitado 42. Senha 43 e valor digitado 44. 
Se o jogador 2 acertar a senha, o programa não deve pedir mais nenhuma tentativa; 
Ao final do jogo exibir a mensagem “Você perdeu. Tente novamente depois!” ou “Parabéns, você acertou!”; 
Não permita que o jogador 2 digite valores fora da faixa esperada (entre 1 e 100); 
Ao final de uma partida, permita aos usuários jogarem novamente. 
Universidade Católica de Pernambuco
Aluno: José Gabriel Vicente das Neves da Silva
Mat.: 201510881-5
Profº Mozart Gomes 			Data 27/10/2015
 		
 
 __________________________________________ 
				 Assinatura
1º Questão:
#include <stdio.h>
#include <math.h>
float rad(float angulo){
	float radiano;
	radiano = (angulo * 3.14159) / 180;
	return radiano;
}
float fatorial(float fat){
	float fatorial = 1, i;
	for (i = 1; i <= fat; i++){
		fatorial *= i;
	}
	return fatorial;
}
float senox(float termos, float angulo){
	float cont = 1, i, sinal = 1, x = 0, seno = 0, termo1 = 0;
	for (i = 1; i <= termos; i++){
	cont += 2;
	x = pow(rad(angulo), cont) / fatorial(cont);
	seno += sinal * x;
	sinal *= -1;
	}
	termo1 = rad(angulo);
	seno = termo1 - seno;
	return seno;
	}
float cosenox(float termos, float angulo){
	float cont = 0, i, sinal = 1, x = 0, coseno = 0, termo1 = 0;
	for (i = 1; i <= termos; i++){
		cont += 2;
		x = pow(rad(angulo), cont) / fatorial(cont);
		coseno += 1 - x * sinal;
		sinal *= -1;
	}
	coseno = coseno - 1;
	return coseno;
}
float tangente(float termos, float angulo){
	float tag;
	tag = (senox(termos, angulo) / cosenox(termos, angulo));
	return tag;
}
int menu(){
	float termo, angulo;
	int opcao;
	printf("\tMenu");
	printf("\n---------------------------------\n");
	printf("Escolha a funcao trigonometrica.\n");
	printf("1 - Seno\n");
	printf("2 - Coseno\n");
	printf("3 - Tangente\n");
	printf("---------------------------------\n");
	printf("Escolha sua opcao: ");
	scanf_s("%d", &opcao);
	if (opcao == 1){
		printf("1 - Seno(x)\n");
		printf("Informe o numero de termos: ");
		scanf_s("%f", &termo);
		printf("Informe o angulo: ");
		scanf_s("%f", &angulo);
		printf("Seno(x): %f\n", senox(termo, angulo));
	}
	if (opcao == 2){
		printf("1 - Coseno(x)\n");
		printf("Informe o numero de termos: ");
		scanf_s("%f", &termo);
		printf("Informe o angulo: ");
		scanf_s("%f", &angulo);
		printf("Coseno(x): %f\n", cosenox(termo, angulo));
	}
	if (opcao == 3){
		printf("1 - Tangente(x)\n");
		printf("Informe o numero de termos: ");
		scanf_s("%f", &termo);
		printf("Informe o angulo: ");
		scanf_s("%f", &angulo);
		printf("Tagente(x): %f\n", tangente(termo, angulo));
	}
	return opcao;
}
int main(){
	menu();
	return 0;
}
2º Questão:
#include <stdio.h>
#include <stdlib.h>
void jogo_da_senha(){
	char opcao = 's';
	int jogador1, jogador2, cont = 1;;
	int jogadaquente, jogadaquente2;
	do{
		system("cls");
		printf("Informe um numero de 1 a 100.\n");
		printf("Jogador1: ");
		scanf_s("%d", &jogador1);
		while (jogador1 > 100 || jogador1 <= 0){
			printf("Opcao invalida! informe numeros entre 1 a 100.\n");
			printf("Jogador1: ");
			scanf_s("%d", &jogador1);
		}
		system("cls");
		printf("------------------------------------------------------------\n");
		printf("Voce tem 5 tentativas para descobrir o numero do jogador1.\n");
		cont = 1;
		while (cont <= 5){
			printf("-----------------------\n");
			printf("%d Tentativa!\n", cont);
			printf("-----------------------\n");
			printf("Jogador2: ");
			scanf_s("%d", &jogador2);
			while (jogador2 > 100 || jogador2 <= 0){
				printf("Opcao invalida! informe numeros entre 1 a 100.\n");
				printf("Jogador2: ");
				scanf_s("%d", &jogador2);
				cont = 1;
			}
			if (cont <= 5){
				jogadaquente = jogador2 + 1;
				if (jogadaquente == jogador1){
					printf("ESTA QUENTE!\n");
				}
				jogadaquente2 = jogador2 - 1;
				if (jogadaquente2 == jogador1){
					printf("ESTA QUENTE!\n");
				}
			}
			if (jogador2 == jogador1){
				printf("Parabens! Voce ganhou!\n");
				cont = 6;
			}
			if (cont == 5){
				printf("Voce perdeu. Tente novamente mais tarde\n");
			}
			cont++;
		}
		printf("Deseja jogar novamente(s/n)? ");
		fflush(stdin);
		scanf_s("%c", &opcao);
	} while (opcao == 's' || opcao == 'S');
}
int main(){
	jogo_da_senha();
	return 0;
}