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

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

Δημοσ. (επεξεργασμένο)

Καλησπέρα σας. Επειδή ξεκίνησα να ασχολούμαι με την γλώσσα προγραμματισμού C θα ήθελα τη βοήθεια σας σε ένα πρόγραμμα που ετοιμάζω ως εξάσκηση.

 

Συγκεκριμένα για την εφαρμογή ενός προγράμματος σε τράπεζα όπου μόλις καταχωρείται η ταυτότητα του πελάτη (ID:......), η ημερομηνία γέννησης του (D-M-Y) και το ποσό που έχει στην τράπεζα (SUM:.......) εμφανίζεται το κάτωθι μήνυμα:

 

O pelatis me arithmo tautotitas ID:....... kai imerominia gennisis D-M-Y katexei to poso twn ............euro.

 

Ο αριθμός ταυτότητας, η ημερομηνία γέννησης και το ποσό θα πρέπει να εμφανίζονται στο σύστημα και ο προγραμματιστής πρέπει να συμπληρώσει τα στοιχεία ώστε να βγαίνει το τελικό μήνυμα.

 

Αν κάποιος γνωρίζει παρακαλώ να μου δώσει τον κώδικα γιατί κάτι κάνω λάθος και δεν μπορώ να το βρω. Ευχαριστώ!!!  

Επεξ/σία από ellas17
Δημοσ.

Αν και μου μυρίζει το: "Αν κάποιος γνωρίζει παρακαλώ να μου δώσει τον κώδικα γιατί κάτι κάνω λάθος και δεν μπορώ να το βρω".

 

​Γιατί δεν παραθέτεις τον κώδικα, να σε βοηθήσουμε να βρεις τα λάθη σου?

  • Like 1
Δημοσ.

Καταρχήν για να μην δημιουργούνται υποψίες θέλω να ξεκαθαρίσω ότι δεν βλέπω αυτό το site ως την έτοιμη λύση για τέτοιου είδους θέματα. Στον προγραμματισμό είμαι αρχάριος και θα ήθελα να έχω ένα μπούσουλα για να εξασκηθώ σε παρόμοια προγράμματα πάνω στη γλώσσα C. Οπότε για να μη μυρίζει περίεργα αυτό που έγραψα να σας πω τι έχω κάνει μέχρι τώρα.

Αρχικά ξεκινάω με printf για να ζητήσω να εμφανίσει το ID (βήμα 1ο) και συνεχίζω με scanf για να δηλώσω τους ακέραιους αριθμούς της ταυτότητας (βήμα 2ο). Στο επόμενο printf ζητάω να εμφανίσει την ημερομηνία γέννησης (βήμα 3ο). Όταν το τρέχω μου εμφανίζει το βήμα 1ο, δίνω έναν αριθμό ταυτότητας για το βήμα 2ο και αμέσως μετά δεν προχωράει στο 3ο βήμα, οπότε δεν μπορώ να προχωρήσω και στη συνέχεια. Γνωρίζει κάποιος τι κάνω λάθος;    


Επίσης στον έλεγχο που έχω κάνει μέχρι και το 3ο βήμα δεν μου εμφανίζεται στον κώδικα κάποιο λάθος. Μήπως πρέπει να δηλώσω κάτι στον κώδικα ανάμεσα στο 2ο και 3ο βήμα;

Δημοσ.
#include <stdio.h>

int main ()

{

    char ch

    int num,day,month,year;

 

    printf("ID: ");

    scanf("%ch,%5d\n",&ch,&num);

    printf("Birth Date: ");

Εδώ μου εμφανίζει το πρόβλημα. Το επόμενο βήμα είναι αυτό:

    scanf("%d-%d-%d\n",&day,&month,&year); και θα πρέπει να ακολουθήσουν τα υπόλοιπα.

Στο τέλος κλείνω με:


    return 0;

    }

Τι πρέπει να κάνω;

 

Δημοσ.

Eμενα αυτο μου μοιαζει 2 ή 3 σειρα ασκησεων σε μαθημα πρωτου ετους σε καποιο τμημα πληροφορικης  :ph34r:

Δημοσ.

Σωστά! Κάνω μεταπτυχιακό στην πληροφορική και είμαι στη 2η σειρά μαθημάτων. Το πρόβλημα που αναφέρω δεν είναι άσκηση που πρέπει να επιλύσω για τη σχολή απλά προσπαθώ να καταλάβω τη φιλοσοφία της γλώσσας C κάνοντας διάφορες ασκήσεις. Εν τω μεταξύ ρώτησα αρκετούς απόφοιτους της πληροφορικής αλλά ή δεν γνώριζαν ή δεν θυμόταν τη γλώσσα C, γι' αυτό και απευθύνθηκα σε αυτό το forum. Απλά θέλω να ξεκολλήσω για να μπορέσω να το τελειώσω.

 

Καλώς παιδιά...ευχαριστώ για το ενδιαφέρον. Θα το ψάξω περισσότερο για να βρω την άκρη.

Καλό βράδυ!

Δημοσ.

Μεταπτυχιακό σε σχολή πληροφορικής και κανείς δεν θυμάται C?(Χμ...)

Επειδή πραγματικά η άσκηση λύνεται σε ένα λεπτό ορίστε:

#include <stdio.h>
int main ()
{
    char ch;
    int num,day,month,year;
 
    
    scanf("%c,%d",&ch,&num);
    printf("ID: %c%d\n",ch,num);
    scanf("%d-%d-%d",&day,&month,&year);
    printf("Birth Date %d %d %d ",day,month,year);
    return 0;
	
}

Αρχικά προφανώς πρώτα πρέπει να διαβάσεις(scanf ) και μετά να εμφανίσεις (printf) επίσης η printf θέλει και ορίσματα για να δουλέψει.

 

Διάβασε αυτό https://fresh2refresh.com/c-programming/c-printf-and-scanf/ θα σε βοηθήσει πιστεύω!

Δημοσ.

Την printf την χρησιμοιεί σαν οδηγό για να του πει τι να πληκτολογήσει

κάτι σαν

printf("Δώσε ID : ") ;

printf("Δώσε ημερομηνία  : ");

Τα λάθη του ήταν στον σκανάρισμα

 

  • 3 εβδομάδες αργότερα...
Δημοσ.

Καλησπερα επειδη και εγω θελω να ρωτησω για μια ασκηση που εχω και ξερω οτι η λυση θα ειναι ηλιθια δεν ανοιγω νεο θεμα.Εχω φτιαξει το προγραμμα το ποιο μπορω να παραθεσω αν χρειαστει απλαγια καποιο λογο εχω εναν πινακα-αθροιστη ο οποιος οτι και να βαλω "γυριζει" 0 (την αρχικη του τιμη).Δινω το κομματι αυτο παρακατω, ευχαριστω! *btw το n εχει διαβαστει παραπανω*

for (i = 0; i < n; ++i)			/*arxikopoihsh athroistwn*/
	{	row[i]=0;
		col[i]=0;
			}
		
	for (i = 0; i<n; i++){      /*elegxos row*/
		for (j= 0; j<n; j++){
			temp= m[i][j];
			row[i] = row[i] + temp;
		}	
	}
Δημοσ.

Γιατί σπας αυτό;

temp= m[i][j];
row[i] = row[i] + temp;

και τελικά αφού το row είναι 0, το m[j] δίνει τιμή μη μηδενική στο rowαν είναι διάφορο του 1. Που είναι ο κώδικας που γεμίζεις το m[j];

  • Like 1
Δημοσ. (επεξεργασμένο)

EDIT: Το προβλημα βρεθηκε.Απλα εκανα Print σαν με %d αντι για %f και ειχα δηλωσει τους πινακες ints.

Επεξ/σία από matheostsik

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

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

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

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

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

Σύνδεση

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

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