El programa lo que hace es leer una serie de ciudades con su nombre, el número de habitantes y su código de provincia en una función y almacenártelos en estructuras, y después te los muestra en la función principal
(en verdad eso no es lo único que me piden, pero es para comprobar que el programa me va bien )
Sin embargo, al compilar en el Dev-C++ me dan los siguientes errores:
- new types may not be defined in a return type.
- two or more data types in declaration of 'leer ciudades'.
Los dos errores salen en la línea 24 (al principio de la función "leer ciudades").
El código es este:
Código:
Por favor, ¿me podéis aclarar este error?. Un saludo y gracias por adelantado /*Bibliotecas utilizadas por el programa*/ #include <string> #include <iostream> using namespace std; /*Definición de constantes*/ #define MAX_ciudades 20 /*Definición de estructuras*/ struct ciudad { string nombre; long habitantes; short codigo; } /*Procedimiento leer ciudades*/ void leer_ciudades (ciudad datos[MAX_ciudades], short cuantos) { short numero_ciudad, i; for(i=0;i<cuantos;i++) { numero_ciudad=i+1; cout << "Introduce el nombre de la ciudad numero " << i+1 << ": "; cin >> datos[i].nombre; cout << "\nIntroduce sus habitantes: "; cin >> datos[i].habitantes; while(datos[i].habitantes<0) { cout << "El numero de habitantes no puede ser negativo.\n", cout << "Introduce el dato de nuevo: "; cin >> datos[i].habitantes; } cout << "\nIntroduce su codigo de provincia (de 1 a 50): "; cin >> datos[i].codigo; while( datos[i].codigo<=0 && datos[i].codigo>50 ) { cout << "El codigo de provincia es erroneo.\n"; cout << "Introduce el codigo de provincia de nuevo: "; cin >> datos[i].codigo; } } } /*********************************************** /* FUNCIÓN PRINCIPAL ************************************************/ int main() { short cuantos, i, j; struct ciudad datos[MAX_ciudades]; cout << "\n\t\tARCHIVO DE CIUDADES\n\n"; cout << "En primer lugar, introduce cuantas ciudades deseas incluir: "; cin >> cuantos; while(cuantos>MAX_ciudades) { cout << "Lo sentimos, el numero de maximo de ciudades que puede gestionar este programa son 20.\n"; cout << "Introduce de nuevo el numero de ciudades: "; cin >> cuantos; } leer_ciudades(datos, cuantos); for(j=0;j<cuantos;j++) { cout << datos[j].nombre << "\n"; cout << datos[j].habitantes << "\n"; cout << datos[j].codigo << "\n"; } system("pause"); return 0; }