Buscar

lista07

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 4 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

s
	Universidade Federal do Recôncavo da Bahia
Centro de Ciências Exatas e Tecnológicas
Bacharelado em Ciências Exatas e Tecnológicas
Processamento de Dados II – prof. Tiago Oliveira Motta
Vetores ou Arrays
PROGRAMA EXEMPLO: Em uma turma de 15 alunos, deseja-se calcular a média da turma, a partir de notas lidas pelo teclado. Fazer um programa que leia as 15 notas e ao final imprima a média da turma e o número de alunos que estão acima da média calculada. 
/* Programa para calcular média de uma turma de 15 alunos
 * e número de alunos acima da média da turma
 */ 
#include <stdio.h> 
#define NUM_ALUNOS 15
#define MEDIA 6.f
int main()
{ 
	float nota[NUM_ALUNOS], media=0; 
	int i, acima=0; 
	/* Leitura das notas */
	for(i=0; i < NUM_ALUNOS; i++)
	{ 
		do { 
			printf(“Qual a nota do %d o. aluno? ",( i+1)); 
			scanf(“%f”, &nota[i]);
		} while (nota[i] < 0 || nota[i] > 10); 
		media += nota[i]; 
	} 
	media /= NUM_ALUNOS; 
printf("A media da turma foi de %f\n”,media); 
	/* Procura dos alunos acima da media da turma 
	 */ 
	for(i=0; i<NUM_ALUNOS; i++)
	{ 
		if(nota[i] > media)
			acima++; 
	} 
	printf("O numero de alunos acima da media da turma foi de %d\n”,acima); 
	return 0;
} 
Um pesquisador quer estudar as variações de temperatura ao longo do dia em uma localidade. Para isso ele mede a temperatura a cada 1 hora. Ao final do dia ele quer saber a temperatura média e em que horários a temperatura esteve abaixo da média. Faça um programa que leia as temperaturas lidas e forneça as informações que o pesquisador precisa. 
Um armazém trabalha com um determinado número de mercadorias diferentes (um máximo de 100 itens). Faça um programa que leia e armazene em vetores os preços de cada mercadoria e a quantidade vendida no mês, calcule e imprima: 
o faturamento mensal do armazém, 
o número (índice) da mercadoria mais vendida e da menos vendida. 
Qual é o preço da mercadoria menos vendida?
Quantas mercadorias tem seu preço mais alto que o preço da mercadoria menos vendida? 
Seja o polinômio: 
P(X) = anXn + an-1Xn-1 + an-2Xn-2 + .... + a1X + a0
Escreva um programa que leia um número real x, a ordem do polinômio n (no máximo 20), os coeficientes ai e calcule o resultado. Imprima o polinômio lido e o valor calculado. 
PROGRAMA EXEMPLO: Faça um programa que leia uma frase de até 80 caracteres, e duas letras quaisquer do usuário. A seguir, troque na frase todas as ocorrências da primeira letra fornecida pela segunda e imprima a nova frase. 
/* Programa para troca de todas as ocorrências de um caracter por outro
 * em uma frase 
 */ 
#include <stdio.h> 
#define TAMANHO 80
int main()
{ 
	char frase[TAMANHO], trocar, por;
	int i; 
	/* Leitura da frase
	 */ 
	do { 
		printf("Qual a frase ? "); 
		gets(frase); 
	} while (frase[0] == '\0'); 
	/* Letra a ser substituida na frase 
	 */ 
	printf("Trocar... "); 
	fflush(stdin); 
	scanf("%c", &trocar); 
	printf("Por... "); 
	fflush(stdin); 
	scanf("%c", &por); 
	/* Troca das letras em toda a frase
	 */ 
	for(i=0; i<TAMANHO && frase[i] != '\0'; i++)
	{ 
		if(frase[i] == trocar)
			frase[i] = por; 
	} 
	printf("A nova frase eh: %s\n", frase); 
}
Para enviar mensagens que não devem ser lidas por estranhos, pode-se codificá-las. Faça um programa que leia uma frase de até 100 caracteres e a seguir codifique essa frase da seguinte forma: cada letra que se encontra em posição ímpar tem seu valor ASCII somado com 2 e cada letra que se encontra em posição par é substituida é trocada por outra 3 posições atrás dela na tabela ASCII. Imprima a frase codificada.
Faça um programa que decodifique uma frase codificada segundo o algoritmo acima. 
Utilize as seguintes funções de caracteres, para fazer os exercícios subseqüentes. Elas se encontram na biblioteca ctype.h 
int isalnum(int ch) – retorna verdadeiro se ch for um caracter alfanumérico (número ou letra)
int isalpha(int ch) – retorna verdadeiro se ch for uma letra
int isdigit(int ch) – retorna verdadeiro se ch for um número
int islower(int ch) – retorna verdadeiro se ch for uma letra minúscula
int ispunct(int ch) – retorna verdadeiro se ch for um sinal de pontuação
int isspace(int ch) – retorna verdadeiro se ch for um espaço em branco ou tabulação
int isupper(int ch) – retorna verdadeiro se ch for maiúscula
int tolower(int ch) – retorna ch transformado em letra minúscula
int toupper(int ch) – retorna ch transformado em letra maiúscula
PROGRAMA EXEMPLO (INCOMPLETO) Complete o programa abaixo para que leia uma frase de até 80 caracteres e a seguir imprima: 
quantos caracteres foram digitados
quantos espaços brancos existem na frase;
quantos desses caracteres são minúsculos e quantos são maiúsculos 
quantos desses caracteres são dígitos
quantos desses caracteres são de pontuação
#include <stdio.h>
#include <ctype.h> 
#define TAMANHO 80
void main()
{ 
	char frase[TAMANHO];
	int i, tamanho=0, branco=0, minusc=0, maiusc=0, digitos=0, pontuacao=0; 
	/* Leitura da frase 
	 */ 
	do { 
		printf("Qual a frase? "); 
		gets (frase); 
	} while (frase[0] == '\0'); 
	/* Procura dos caracteres pedidos
	 */ 
	for(i=0; i < TAMANHO && frase[i] != '\0'; i++) 
	{ 
		tamanho++; 
		if(isspace(frase[i]))
			branco++; 
		if(islower(frase[i]))
			minusc++; 
		/* continue aqui....	
		 */ 
	} 
	printf("A frase contem %d caracteres\n", tamanho);
	printf("O numero de espacos em branco eh de %d\n", branco); 
 	printf("O numero de caracteres minúsculos eh de %d\n", minusc);
	/* continue aqui
	 */ 
}
Faça um programa que leia uma frase de até 80 caracteres e inverta todas as letras maiúsculas para minúsculas e vice-versa e além de colocar um hífem no lugar de todos os espaços em branco. Imprima o resultado. 
�

Continue navegando