עבור לתוכן

2 שאלות

Featured Replies

פורסם

כתבתי תוכנית וזה לא פועל:|

הפונקציה פה מקבלת מספר וסיפרה ומחזירה כמה פעמים הסיפרה מופיעה במספר(חובה להשתמש בפונקציה הזאת)

והתוכנית הראשית אמורה להדפיס את הספרה שמופיעה הכי הרבה במספר.

אז ניסיתי לעשות אבל זה לא מחזיר לי כלום.

#include <stdio.h>

#include <conio.h>

int number2(int num,int dig);

int main(){

int number,digit,max=0,number1,x;

printf("enter number: ");

scanf("%d",&number);

number1=number;

while(number1!=0){

digit=number1%10;

x=number2(number,digit);

if(x>max)

max=digit;}

printf("%d",max);}

int number2(int num,int dig){

int count=0,dig1;

while(num!=0){

dig1=num%10;

if(dig==dig1)

count++;

num=num/10;}

return count;

}

והשאלה השנייה שלי:

יש אפשרות לשמור את מה שמודפס בדוס בקובץ טקסט? נניח התוכנית מלמעלה.. אז שזה ישמור בקובץ טקסט את הספרה שמופיעה הכי הרבה.. אפשר? אם כן איך?

תודה!!!!!!!!!

פורסם

פשוט התנאי תמיד התקיים, שכחת לחלק את number1 ב10 כל פעם.

נכנסת שם ללולאה אינסופית

#include <stdio.h>

#include <conio.h>

int number2(int num,int dig);

void main()

{

int number,digit,max=0,number1,x=0;

printf("enter number: ");

scanf("%d",&number);

number1 = number;

while(number1 != 0)

{

digit = number1 % 10;

x = number2(number,digit);

if(x > max)

max=digit;

number1= number1/10;

}

printf("%d",max);

}

int number2(int num,int dig)

{

int count=0,dig1;

while(num != 0)

{

dig1 = num%10;

if(dig == dig1)

count++;

num = num/10;

}

return count;

}

עריכה:

שכחתי טיפה שאתה בC, אז תשנה את הVOID MAIN ל INT MAIN

ותעשה בסוף return 0. (בסוף הmain)

פורסם

בקשר לשאלה שלך - תרד כמה תראדים למטה רשום שם על קבצים.

ארכיון

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

דיונים חדשים