In una matrice 6 righe e 6 colonne e' memorizzato l'orario scolastico. Fornire un programma che permetat di stampare:
3) quale materia c'e' il giorno G dell'ora O (G e O sono forniti in input).
/*
CLAUDIO CARDINALE III AI
In una matrice 6 righe e 6 colonne e' memorizzato l'orario scolastico. Fornire un programma che permetat di stampare:
1) tutte le materie di un giorno fornito in input
2) in quali giorni e in quali ore c'e' la materia richiesta in input
3) quale materia c'e' il giorno G dell'ora O (G e O sono forniti in input).
I giorni della settimana sono espressi tramite caratteri
*/
#include<stdio.h>
int main(){
//dichiarazioni
int i,j,scelta,h,gn;
char mat[6][6]={{'i','i','e','c','l','l'},{'s','s','i','m','h','h'},{'f','f','s','e','c','c'},{'i','i','m','m','e','l'},{'d','d','s','s','m','m'},{'i','m','r','d','d','d'}},g,m;
//acquisizione dati
do{
printf("1) tutte le materie di un dato giorno\n2) giorni ed ore di una materia\n3) materia in un determinato giorno ed in una determinata ora\nscelta : ");
scanf("%d",&scelta);
}while(scelta <1 || scelta >3);
//acquisizione dati e visualizzazione risultati
switch(scelta){
case 1:
do{
printf("inserire il giorno : ");
getchar();
scanf("%c",&g);
}while(g != 'l' && g != 'm' && g != 'e' && g != 'g' && g != 'v' && g != 's');
switch(g){
case 'l':
gn = 1;
break;
case 'm':
gn = 2;
break;
case 'e':
gn = 3;
break;
case 'g':
gn = 4;
break;
case 'v':
gn = 5;
break;
case 's':
gn = 6;
break;
}
for(i=0;i<6;i++)
printf("%c\n",mat[gn-1][i]);
break;
case 2:
printf("inserire materia : ");
getchar();
scanf("%c",&m);
for(i=0;i<6;i++)
for(j=0;j<6;j++)
if(m == mat[i][j])
switch(i){
case 1:
printf("giorno : l, ora : %d\n",j+1);
break;
case 2:
printf("giorno : m, ora : %d\n",j+1);
break;
case 3:
printf("giorno : e, ora : %d\n",j+1);
break;
case 4:
printf("giorno : g, ora : %d\n",j+1);
break;
case 5:
printf("giorno : v, ora : %d\n",j+1);
break;
case 6:
printf("giorno : s, ora : %d\n",j+1);
}
break;
case 3:
do{
printf("inserire il giorno : ");
getchar();
scanf("%c",&g);
}while(g != 'l' && g != 'm' && g != 'e' && g != 'g' && g != 'v' && g != 's');
printf("inserire l'ora : ");
scanf("%d",&h);
switch(g){
case 'l':
gn = 1;
break;
case 'm':
gn = 2;
break;
case 'e':
gn = 3;
break;
case 'g':
gn = 4;
break;
case 'v':
gn = 5;
break;
case 's':
gn = 6;
break;
}
printf("%c\n",mat[gn-1][h-1]);
}
}