Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Θα ήθελα σας παρακαλώ τη βοηθειά σας, γιατί πρέπει να παραδόσω την εργασία την Παρασκευή.

 

Έχω γράψει ένα πρόγραμμα για κράτηση 20 θέσεων και δεν μπορώ να βρώ, οταν πατάω το 1 να μου κρατάει τις θέσεις σε μορφή 1Α,1Β,2Α,2Β και ούτο καθεξής. Σας ευχαριστώ εκ των προτέρων για τη βοήθεια.



Θα ήθελα σας παρακαλώ τη βοηθειά σας, γιατί πρέπει να παραδόσω την εργασία την Παρασκευή.

 

Έχω γράψει ένα πρόγραμμα για κράτηση 20 θέσεων και δεν μπορώ να βρώ, οταν πατάω το 1 να μου κρατάει τις θέσεις σε μορφή 1Α,1Β,2Α,2Β και ούτο καθεξής. Σας ευχαριστώ εκ των προτέρων για τη βοήθεια.

 

 

 

#include <stdio.h>
#include <stdlib.h>
int main ()
{
//dilwsi metavlitwn
int ep, sum1=0, sum2=0, found, en_ep, i, k, sum=0, T[10][2];
FILE* myfile=fopen("Data.dat","w");

 

//to sum einai o metritis pou athrizei tn arithmo tn kratimenwn thesewn
//arxikopoihsh - midensmos pinaka apothikeysis thesewn
for (i=0; i<20; i++)
{
T=0;    
}
printf ("Parakalw pliktrologiste 1 gia na epileksete Prwti Thesi \n");
printf ("Parakalw pliktrologiste 2 gia na epileksete Oikonomiki Thesi \n");
printf ("Parakalw pliktrologiste 0 gia eksodo apo to programma \n");
scanf("%d", &ep);
while (ep!=0 && sum!=20)
{
if (ep==1)
{
found=0;
for (k=0; k<10; k++)
{
if (T[k][k]==0)
{
//pianw tn thesi
T[k][k]=1;
//ayksanw metriti kratimenwn thesewn
sum1=sum1+1;
//an vrethei thesi i found ginetai 1 alliws paramenei 0
found=1;
//ektipwnw thesi pou kratithike
printf ("\nMolis kratithike h thesi noymero %d stin Prwti Thesi toy Aeroplanoy \n\n", k+1);
//teleiwnw tn for me ta k

break;
}
}
if (found==0)
{
printf ("\nDen iparxei diathesimi thesi stin Prwti Thesi. Tha Thelate stin Oikonomiki? An nai patiste to 1 alliws patiste to 0 \n");
scanf ("%d", &en_ep);
if (en_ep==1)
{
for (k=10; k<20; k++)
{
if (T[k][k]==0)
{
//pianw tn thesi
T[k][k]=1;
//ayksanw metriti kratimenwn thesewn
sum2=sum2+1;
//an vrethei thesi i found ginetai 1 alliws paramenei 0
found=1;
//ektipwnw thesi pou kratithike
printf ("\nMolis kratithike h thesi noymero %d stin Oikonomiki Thesi toy Aeroplanoy \n\n", k+1);
//teleiwnw tn for me ta k

break;
}
}
if (found==0)
{
printf ("\nDistixws den iparxei diathesimi thesi stin Oikonomiki Thesi.\nH epomeni ptisi feygei se 4 wres \n");
}
}
else
{
printf ("\nH epomeni ptisi feygei se 4 wres\n\n");
}
}
}
if (ep==2)
{
found =0;
for (k=10; k<20; k++)
{
if (T[k][k]==0)
{
//pianw tn thesi
T[k][k]=1;
//ayksanw metriti kratimenwn thesewn
sum2=sum2+1;
//an vrethei thesi i found ginetai 1 alliws paramenei 0
found=1;
//ektipwnw thesi pou kratithike k tn katigoria
printf ("\nMolis kratithike h thesi noymero %d stin Oikonomiki Thesi toy Aeroplanoy \n\n", k+1);
//teleiwnw tn for me ta k

break;
}
}
if (found==0)
{
printf ("\nDen iparxei diathesimi thesi stin Oikonomiki Thesi. Tha Thelate stin prwti? An nai patiste to 1 alliws patiste to 0 \n");
scanf ("%d", &en_ep);
if (en_ep==1)
{
for (k=0; k<5; k++)
{
    if (T[k][k]==0)
{    //pianw tn thesi
T[k][k]=1;
//ayksanw metriti kratimenwn thesewn
sum1=sum1+1;
//an vrethei thesi i found ginetai 1 alliws paramenei 0
found=1;
//ektipwnw thesi pou kratithike k katigoria
printf ("\nMolis kratithike h thesi noymero %d stin Prwti Thesi toy Aeroplanoy \n\n", k+1);
//teleiwnw tn for me ta k

break;
}
}
if (found==0)
{
printf ("\nDistixws den iparxei diathesimi thesi stin Prwti Thesi. \nH epomeni ptisi feygei se 4 wres \n");
}
}
else
{
printf ("\nH epomeni ptisi feygei se 4 wres \n\n");
}
}
}
printf ("Parakalw pliktrologiste 1 gia na epileksete Prwti Thesi \n");
printf ("Parakalw pliktrologiste 2 gia na epileksete Oikonomiki Thesi \n");
printf ("Parakalw pliktrologiste 0 gia eksodo apo to programma \n");
scanf ("%d", &ep);
sum=sum1+sum2;
}


printf ("\nStin Prwti Thesi exoun kratithei %d theseis \n", sum1);
printf ("Stin Oikonimiki Thesi exoun kratithei %d theseis \n\n\n", sum2);
fprintf(myfile,"Stin Prwti Thesi exoun kratithei %d theseis \n", sum1);
fprintf(myfile,"Stin Oikonimiki Thesi exoun kratithei %d theseis \n",sum2);
fclose(myfile);
printf ("Pata opoiodipote pliktro gia eksodo... \n");
getchar ();

system("pause");
return 0;
}

Ergasia C No 2.txt

Δημοσ.

Δεν έκατσα να δω αναλύτικά όλο τον κώδικα, όμως αρχικά έχεις πρόβλημα με την προσπέλαση του πίνακα T και τα loop που χρισημοποιείς.  Χρειάζεσαι διπλό loop

 

for(i=0; i<10; i++){
  for(j=0; j<2; j++){
    T[i][j] = 0;
    // H όποια άλλη λειτουργεία θέλεις για το στοιχείο του πίνακα
  }
}

Ξεκίνα με αυτό και βλέπουμε...

 

edit: Υπάρχουν κι άλλα προβληματάκια, όπως του ότι δεν ελέγχεις αν άνοιξε σωστά η fopen το αρχείο, άν διάβασε σωστά η scanf, αν μένει τίποτα στον input buffer μετα που διαβάζεις κτλ...

Επίσης βάζε τον κώδικα σε code tags για να μπορουμε να τον διαβάζουμε ευκολότερα...

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...