PDA

Visualizza la versione completa : Agenda che ordina gli appuntamenti in base al giorno della settimana


AmedeoFalco
05-06-2017, 10:55
Salve ragazzi, scusate ancora, se posto spesso, questo esrcizio mi richiede di ordinare gli appuntamenti in base ai giorni della settimana. Per ora io ho scrito il codice che ordina gli appuntamenti in base al numero del giorno del mese! Tipo se digito giorno 4 poi giorno 5 e poi giorno 2

Visualizza
Giorno 2
Giorno 4
Giorno 5

Pagina 1(corrisponde all'appuntamento del giorno 2) e cosė via
[CODE]#include <stdio.h>#include <iostream>
#include <cstdlib>
#include <cstring>


#define MAXAPP 3


main (){

int NumGiorni;
printf("Qunti appuntamenti hai? Digita affianco: ");
scanf("%d",&NumGiorni);



typedef
struct{

char testo[20];
}MASSIMO;
typedef
struct {
int numeroPagina;
char testo[20];
MASSIMO appunta[MAXAPP];

} PaginaDellaAgenda;



PaginaDellaAgenda Agenda[NumGiorni]; // Agenda per 1 mese

int i,j;
char tmpStr[100];
int c; char d;
int mese[NumGiorni];

//Leggi gli appuntamenti
printf("\nBenvenuto nella tua agenda personale! Ora puoi inserire gli appuntamneti\n");
c=getchar(); //Passa il cursore sul primo appuntamento e aspetta che venga inserito
for (i=0;i<NumGiorni;i++) {
Agenda[i].numeroPagina=(i+1);


printf("Inserisci giorno del mese n.%d: ",(i+1));
scanf("%d",&mese[i]);
printf("Inserisci il tipo di giorno da 0 a 6: %d");
scanf("%d",&g[i]);
for(j=0;j<MAXAPP;j++){
d=getchar();
printf("\nInserisci l'appuntamento n %d: ", (j+1));

fgets(tmpStr,100,stdin); //mi permette di inserire lo spazio nella battitura della stringa
tmpStr[strlen(tmpStr)-1]=0; //utile a sostituire \n delo spazio con carattere '\0'
strcpy(Agenda[(mese[i])].appunta[j].testo,tmpStr);
} //"Leghiamo" i giorni dei mesi con l'agenda

}

//Visualizza Agenda
printf("\n ________Visualizzo l'agenda_________ \n");
int pass;
int hold;

for(pass=1; pass<=NumGiorni;pass++){ //Ordinamento dei giorni
for(i=0;i<=NumGiorni-1;i++) {
if(mese[i]>mese[i+1]){

hold=mese[i];
mese[i]=mese[i+1];
mese[i+1]=hold;
}
}
}




for(i=0;i<NumGiorni;i++){
printf("\n");
printf("Giorno: %d\n",mese[i]);}

for (i=0;i<NumGiorni;i++) {
printf("\nPagina %d \n", Agenda[i].numeroPagina); //Pagina 1 corrisponde a giorno 1 e cosė via
for(j=0;j<MAXAPP;j++){

printf("Appuntamento: %s \n", Agenda[(mese[i])].appunta[j].testo);}


}
printf("\n ");
system("PAUSE");
return 0;
}[CODE]

per i giorni della settimana tipo Lunedi, Martedė e cosė via io avevo pensato ad enum ma come faccio poi ad ordinarli? Nel senso avere per esempio

Giorno 2 Lunedė
Giorno 4 Martedė etc...

Ovviamente č l'utente che deve inserire i giorni della settimana

Loading