פירוק מספר לסיפרותיו ב#C - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

פירוק מספר לסיפרותיו ב#C


Martin

Recommended Posts

החופש גרם לי לשכוח את כל שפת #C

טוב, בכל אופן באחת התוכניות שלי אני צריך להשתמש בפירוק מספר לסיפרותיו

מישהו יכול להגיד לי איך לפרק מספר דו תלת ו4 סיפרתי לסיפרותיו

תודה לעוזרים :xyxthumbs:

קישור לתוכן
שתף באתרים אחרים

אין לי כוח עכשיו להכנסז למהדר ולכתוב את זה, אבל הרעיון הוא שתשתמש ב%10 כדי לקבל את הספרה האחרונה ואז להוריד אותה ב 10/

כן, זה הרעיון.

אני אראה לך דוגמה לפונקציה שתחזיר את הסכום של ספרות המספר (לדוגמה: 472 יחזיר 13)


int func(int num)
{
int sum = 0;
while(num != 0)
{
sum += num%10;
num /= 10;
}

return sum;
}

קישור לתוכן
שתף באתרים אחרים

הנה עוד דרך


#include<iostream>
using namespace std;
int main()
{
int x,y,t;
int sum;
int sum2=1;
int sum3=0;
int x1;
int x3;
int h1=0;
int h2=0;
cout<<"Put number here"<<endl;
cin>>x;
sum=x;
for(x3=0;x3<100;x3++)
{
sum2=sum2*10;
sum=sum/10;
if(sum<=10)
{

for(x1=0;x1<100;x1++)
{
h1=h1+sum2;
sum3=sum3+1;
if(h1>x)
{
sum3=sum3-1;
t=sum3;
cout<<t<<endl;
cout<<""<<endl;
h1=h1-sum2;
x=x-h1;
sum2=sum2/10;
h1=0;
sum3=0;
if(x<10)
{
cout<<x<<endl;
cin>>t;
}
}
}
}
}
return 0;
}



קישור לתוכן
שתף באתרים אחרים

באמת אפשר להשתמש בשיטה של המודולו 10 והחילוק ב10 אבל גם אפשר לעשות באמת to string ואז לפנות לכל אחת מהספרות על ידי num[] ולבחור במיקום שאתה רוצה...

אבל זה יותר מסורבל.

קישור לתוכן
שתף באתרים אחרים

זה הדרך שאני מכיר בכל אופן:

דו ספרתי

units=num%10

tens=num/10

תלת ספרתי

units=num%10

tens=num/10%10

hundreds=num/100

ארבע ספרתי

units=num%10

tens=num%100/10

hundreds=num/100%10

thousands=num/1000

תבדוק שזה עובד זה הכל מהזיכרון...

מקווה שעזרתי :)

קישור לתוכן
שתף באתרים אחרים

זה הדרך שאני מכיר בכל אופן:

דו ספרתי

units=num%10

tens=num/10

תלת ספרתי

units=num%10

tens=num/10%10

hundreds=num/100

ארבע ספרתי

units=num%10

tens=num%100/10

hundreds=num/100%10

thousands=num/1000

תבדוק שזה עובד זה הכל מהזיכרון...

מקווה שעזרתי :)

שים סוגריים כדי להות בטוח מה מתבצע קודם !!!

קישור לתוכן
שתף באתרים אחרים

int i

i.ToString()

עכשיו יש לך מחרוזת.. ואתה יכול לעבור תו תו...

אם אתה רוצה ערך int של כל ספרה בודדת:

int.Pars - מקבל מחרוזת מחזיר int...

לצורך העניין - עבודה עם מחרוזות לא מומלצת מבחינת perfomence. אז אם הקוד שלך חשוב בו ביצועים..

תתחשב בזה.

קישור לתוכן
שתף באתרים אחרים

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

×
  • צור חדש...