sinetik Posted September 25, 2011 Report Share Posted September 25, 2011 (edited) el problema es que no se me ocurre como usar una sola variable de joven, adulto, tecera edad, etc para todas las comunas ya que de no ser asi tendria que escribir extremadamente muchas variablesaqui el problema: Se ha realizado un censo en el país y se le pide que construya un programa en lenguaje C quesolicite los siguientes datos por cada habitante: nombre provincia, nombre comuna, rut persona,nombre persona, apellido persona y edad persona. Los datos se ingresan agrupados por provincia ydentro de la provincia sub-agrupados por comuna, es decir, todos los habitantes de una misma comuna,luego todos los de otra comuna perteneciente a la misma provincia y así sucesivamente, cuando no haymás habitantes se ingresa como nombre de provincia “ZZZ”.El programa debe entregar como resultado por cada Comuna: el número de habitantes que tiene,el número de habitantes de la tercera edad (mayor a 65 años), número de habitantes adultos (mayor a21 años), número de habitantes jóvenes (mayor a 13 años) y número de habitantes niños. Además, sedebe entregar el nombre(s) de la(s) persona(s) más anciana de la comuna.El programa también debe entregar los mismos datos anteriores por Provincia censada y al finaldebe proporcionar la provincia con más ancianos, la provincia con menos niños.Un ejemplo de la salida de su programa podría ser:Provincia: ARICAComuna: AricaHabitantes: 186.500Tercera Edad: 36.500 Adultos: 50.000 Jóvenes: 90.000 Niños: 30.000Persona más anciana (98 años): 4.567.234-2 Felipe Sandoval, 4.345.245-3 María Pérez.Comuna: CamaronesHabitantes: 1.500Tercera Edad: 400 Adultos: 800 Jóvenes: 200 Niños: 100Persona más anciana (102 años): 3.671.245-2 Mónica Ramírez.Total Habitantes Provincia ARICA: 188.000Tercera Edad: 36.900 Adultos: 50.800 Jóvenes: 90.200 Niños: 30.100Persona más anciana de la Provincia ARICA (102 años): 3.671.245-2 Mónica Ramírez vive en Comunade Camarones.Provincia: PUTRE::Provincia con más ancianos (2000.000): SANTIAGOProvincia con menos niños (3.000): Aysén si logran ayudarme les hago un queque virtual :D Edited September 25, 2011 by sinetik Link to comment Share on other sites More sharing options...
wtfbenja Posted September 25, 2011 Report Share Posted September 25, 2011 aqui el trabajo es con estructurasno se si podi usar base de datos, o leer archvio, o teni que dejar todo en memoria mientras corre el programa.para los 3 usai estructuras, pero si es en memoria ocupa una lista enlazada para guardar las cosas, sino las vas escribiendo en el archivo o en la bd al final del ingreso. creas una estructura persona que tenga los campos que necesitas, incluido como campo la comuna y la provincia asi sabes a cual pertenece cada persona, no tienes que crear variables distintas si al final son todas personas y comparten los mismos datos, solo teni que tener el campo de la comuna o provincia para poder identificarlo despues y entregar los resultados. Link to comment Share on other sites More sharing options...
sinetik Posted September 25, 2011 Author Report Share Posted September 25, 2011 gracias wtfbenja me sirvio arto aunque aun sufro pero estoy averiguando sobre las estructuras Link to comment Share on other sites More sharing options...
wtfbenja Posted September 25, 2011 Report Share Posted September 25, 2011 trata de ir posteando detalles de lo que vas programando, y cuenta que ramo es y cosas asi, porque si estas en primero y es el primer ramo de programacion quiza es mucho una lista enlazada, ocupar archivos o base de datos.o cuenta que cosas manejas. Link to comment Share on other sites More sharing options...
Kurorolucifer Posted September 26, 2011 Report Share Posted September 26, 2011 (edited) ---error--- Edited September 26, 2011 by Kurorolucifer Link to comment Share on other sites More sharing options...
sinetik Posted September 27, 2011 Author Report Share Posted September 27, 2011 (edited) // integrantes: felipe morales - es todo lo que alcance a intentar, incluso tuve que aprender cosas que nunca vimos en clases como estructuras de control y punteros D: pero hice lo que pude #include <stdio.h>#include <string.h>#include <stdlib.h> #define Elementos 500 char rut[20]; int edad; int edad_masanciana=-0.1; char nom_pers[15]; char apell_pers[15]; struct estructura_comuna { char nom_com[20]; int habitantes; int terceraedad; int adultos; int jovenes; int ninos; char masanciana[120]; } comuna ; struct estructura_provincia{ char nom_provincia[20]; struct estructura_comuna comuna; } provincia ; struct estructura_provincia *p = &provincia;struct estructura_comuna *c = &comuna; int main(){ (*c).habitantes=0; (*c).terceraedad=0; (*c).adultos=0; (*c).jovenes=0; (*c).ninos=0; int num_provincia; printf("programa de registro para censo.\n\n"); printf("inicio"); printf("\n------"); printf("\n\nnombre de la provincia(*zzz* para terminar): "); scanf("%s",(*p).nom_provincia); if(strcmp((*p).nom_provincia,"zzz")!=0) { for(num_provincia=0;strcmp((*p).nom_provincia,"zzz")!=0;num_provincia++) { printf("nombre de la comuna: "); scanf("%s",(*c).nom_com); printf("Rut de la persona: "); scanf("%s",&rut); printf("nombre de la persona: "); scanf("%s",nom_pers); printf("apellido de la persona: "); scanf("%s",apell_pers); printf("edad de la persona: "); scanf("%s",&edad); if(edad<=18) { (*c).ninos=(*c).ninos+1; } else if(edad<=24) { (*c).jovenes=(*c).jovenes+1; } else if(edad<=60) { (*c).adultos=(*c).adultos+1; } else { (*c).terceraedad=(*c).terceraedad+1; } if(edad>edad_masanciana) { strcpy((*c).masanciana,rut); strcat((*c).masanciana," - "); strcat((*c).masanciana,nom_pers); strcat((*c).masanciana," "); strcat((*c).masanciana,apell_pers); } printf("\n\n------------------------------------------------------------"); printf("\nnombre de la provincia(*zzz* para terminar): "); scanf("%s",(*p).nom_provincia); } } } al final tuve que mandar eso nomas, no pude hacer mas. De todas maneras quisiera aprender = como hacerlo aunque ya no me sirva para la nota :D obiamente falta otro for para los datos de salida, pero me importa saber acerca de las estructuras si estab bien echas, y si esta anidada? Edited September 27, 2011 by sinetik Link to comment Share on other sites More sharing options...
wtfbenja Posted September 30, 2011 Report Share Posted September 30, 2011 te falto caleta, kiza era mucho trabajo derrepente los profes se van en vola, pero dan arto tiempo para investigar toa la wea y hacelro, o fuiste poco especifico en los alcances del programa, si se podia trabajar con archivos, estrucutras, listas, bd. asi mirandolo de reojo sin compilarlo, te falto la struct persona. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now