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

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

Δημοσ.

καλησπερα στην παρεα. σημερα μας βαλανε την πρωτη επισημα εργασια σε C , μας δωσανε 6 assignments να κανουμε και εχω κολλησει στο 5ο , θας παραθεσω το προβλημα και αν μπορειται πειτε μου εσεις τι θα κανατε .

 

 

Lab Assignment 5 :

Write a program (lab1_5.c) which computes the “sum of all digits”, i.e., the cross sum

for a positive integer of type long int. Example : for 1339, the sum of the digits is 16.

Δημοσ.

μας ειπανε να το κανουμε με moduler .

 

και ειναι το πρωτο μαθημα και δεν μας εχει πει καν τι εινα ιαυτο το πραγμα ....

Δημοσ.

Ο τελεστής ονομάζεται modulo και σου επιστρέφει το υπόλοιπο της διαίρεσης 2 ακέραιων αριθμών.

 

μας ειπανε να το κανουμε με moduler .

 

και ειναι το πρωτο μαθημα και δεν μας εχει πει καν τι εινα ιαυτο το πραγμα ....

Δημοσ.

Βάλε σε ένα loop να σου κάνει συνέχεια %10 τον αριθμό σου, μέχρι να μηδενιστεί. Κάθε μια από αυτές τις διαιρέσεις μέσα στο loop σου δίνει ως αποτέλεσμα το εκάστοτε τελευταίο ψηφίο.

Δημοσ.

So "moduler" is the new "modulo"!

 

Ενιγουέι, μπορώ να σε βοηθήσω, τόσο σε αυτή την άσκηση όσο και στις επόμενες.

 

PM me if you are interested.

Δημοσ.

Εάν παίρνεις τον αριθμό σε char από το terminal, θα μπορούσες να το κάνεις με arrays και ένα pointer στον array.

 

Δηλαδή:

 

>
char theInput[256];

//Input handling [...]

char* pBuff = theInput;

int indx;
long int rslt = 0;

for ( indx = 0; indx < 256; indx++)
{
 rslt += atoi(*(pBuff++));
}

Δημοσ.

ή κι απευθείας...

 

>
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <inttypes.h>  // C99
// ---------------------------------------------------
int main( void )
{
   intmax_t res = 0;
   for (int c; EOF != (c=getchar()) && '\n' != c; )
       if ( isdigit(c) )
           res += c - '0';
   printf( "%" PRIdMAX "\n", res );
   exit(0);
}

Δημοσ.

Εάν παίρνεις τον αριθμό σε char από το terminal, θα μπορούσες να το κάνεις με arrays και ένα pointer στον array.

 

Δηλαδή:

 

>
char* pBuff = theInput;
 rslt += atoi(*(pBuff++));

 

Εδώ δεν πετάει char στην atoi ?

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

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

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

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

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

Σύνδεση

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

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