PROGRAMAÇÃO ESTRUTURADA II Profª. Noeli Ciência da Computação 1 Modularização de Registros Ciência da Computação 2 Registros PODEMOS UTILIZAR OS CONCEITOS DE MODULARIZAÇÃO APLICADOS AOS PROBLEMAS RESOLVIDOS ATRAVÉS DE VETORES DE REGISTROS. Ciência da Computação 3 #include <stdio.h> #include <stdlib.h> #include<string.h> #define MAX 2 typedef char string[20]; struct reg { string nome; int idade; }; typedef struct reg R[MAX]; 4 FUNÇÃO PRINCIPAL void main() { R vet; int x; string nomemenor; le_vetor(vet); system("cls"); mostra(vet); x = maiorid(vet); printf("\n\nA maior idade e: %d\n\n",x); menorid(vet); system("PAUSE"); } 5 PROCEDIMENTO LE_VETOR void le_vetor(R v) { int x; for(x=0;x<MAX;x++) { printf("\nNome: "); scanf("%s",v[x].nome); printf("\nIdade: "); scanf("%d",&v[x].idade); } } 6 PROCEDIMENTO MOSTRA void mostra(R v) { int x; printf("\nOs elementos inseridos são: "); for(x=0;x<MAX;x++) { printf("\nNome: %s",v[x].nome); printf("\nIdade: %d",v[x].idade); } } 7 FUNÇÃO MAIORID int maiorid(R v) { int maior = - 10, x; for(x=0;x<MAX;x++) { if(v[x].idade > maior) { maior = v[x].idade; } } return maior; } 8 PROCEDIMENTO MENORID void menorid(R v) { int menor = 200, x; string nmenor; for(x=0;x<MAX;x++) { if(v[x].idade < menor) { menor = v[x].idade; strcpy(nmenor, v[x].nome); } } printf("\nO nome de quem tem menor idade e: %s\n\n",nmenor); } 9 Crie uma função/procedimento para cada item solicitado nos programas abaixo: 1 - Elabore um programa modularizado em C que, a partir de um vetor com, no máximo, 10 nomes de cidades e numero de habitantes, possibilite: • A digitação dos elementos do vetor; • A busca uma determinada cidade; • O nome estado mais populoso; • A quantidade de habitantes do estado menos populoso. 2 – O cadastro de produtos de uma loja deve conter: nome, preço, estoque. Defina um vetor de registros para conter uma lista de 20 produtos. Faça funções/procedimentos para: • Incluir os produtos; • Mostrar na tela todos os produtos que estão em falta (estoque = 0); • Mostrar o preço do produto mais caro; 3 – Foi realizada uma pesquisa entre os habitantes de uma cidade, coletando os seguintes dados: Nome, UF, salário, estado civil, idade e nº filhos. Faça um programa que leia esses dados para 50 habitantes, calcule e mostre: • A média de salário da população; • O nome e o estado da pessoa que possui maior número de filhos; • Uma listagem de todos os habitantes cujo salário seja menor que R$ 500,00, estado civil “Casado(a)” e residente em GO. 10