Problema con este algoritmo

Iniciado por LombardiG, 23 Octubre 2016, 01:44 AM

0 Miembros y 1 Visitante están viendo este tema.

LombardiG

Alguien me podria ayudar con este algoritmo en C

Considere una matriz LIBRO (6x4) que permita almacenar datos que representen a: LIBRO, AUTOR,  EDITORIAL, TEMA y un vector USO con las cantidad de veces que el libro ha sido utilizado por los socios de la Biblioteca. La matriz deberá permitir almacenar 6 libros, al igual que el vector.

1. Cargar la matriz y el vector, juntos, con los datos indicados. 
2. Listar los nombres de las Editoriales que  tengan más de 900 usos.
3. Listar los nombres de los libros, cuyo tema finalice con "tica".
4. Informar  el nombre del libro que más usos ha tenido.
5. Ordenar la matriz por Libro, considerando que el vector se debe actualizar el orden de acuerdo a la matriz .
6. Informar la cantidad de libros de "Medicina" existentes en la matriz. 


engel lex

no se hacen tareas, se resuelven dudas, si tienes alguna, dila y muestra los avances que lleves
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

LombardiG

#2
int matriz[6][4], i, j, usos[9999], vector[6];
char lib[50], aut[50], edit[50], tema[50];

//cargo la matriz
for(i = 0; i < 6; i++) {
for(j = 0; j < 1; j++) {
printf("Ingrese el nombre del libro [%d][%d]: ", i+1, j+1);
scanf("%s", &lib);
printf("Ingrese el autor del libro [%d][%d]: ", i+1, j+1);
       scanf("%s", &aut);
printf("Ingrese la editorial del libro [%d][%d]: ", i+1, j+1);
scanf("%s", &edit);
printf("Ingrese el tema del libro [%d][%d]: ", i+1, j+1);
   scanf("%s", &tema);
}
}
printf("\n");



//cargar el vector
for(i = 0; i < 6; i++) {
printf("Ingrese las veces que se uso el libro [%d]: ", i+1);
fflush(stdin);
scanf("%d", &usos[i]);
}
printf("\n");

   //muestro la matriz
for(i = 0; i < 6; i++) {
for(j = 0;j < 1; j++) {
printf("%6s", lib, aut, edit, tema);
}
}

printf("\n");
//MOSTRAR EL VECTOR
for(i = 0; i < 6; i++) {
printf("%d  -  ", usos[i]);
}
printf("\n");

   
Aquí por ejemplo tengo un problema con mostrar la matriz, que error estaré cometiendo ahi


Mod: Los códigos deben ir en etiquetas GeSHi

engel lex

el primer error es que no muestras la matriz... simplemente asumes que esa variables contienen los valores correctos de la matriz al llamarlas... (por otro lado creo que ese codigo debe dar errores de compilación...

tienes que hacer tambien matrices de char, porque si usas un char[50] tendrá para almacenar 50 letras, pero más nada, no tiene multiples secciones

el codigo no tiene mucho sentido realmente... te recomiendo sentarte con calma y un tutorial de arreglos y matrices... porque tienes muuuuchas fallas en el uso, veo que no estás claro de que van
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.