چاپ عدد ((فوری)) - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

چاپ عدد ((فوری))

+2 امتیاز

سلام دوستان من این برنامه نوشتم ولی وقتی برای استاد فرستادم بااینکه درست کار میکرد گفت این برنامه بدون استفاده از آرایه بنویسم !!!! کسی آیا میتونه اینو بدون آرایه بنویسه یا اگه با آرایه مینویسین راحل بهتری دارین کدی که من نوشتم آخر این پست میزارم ببینید :

  • محدودیت زمان: ۱ ثانیه
  • محدودیت حافظه: ۱۲۸ مگابایت

برنامه‌ای بنويسيد كه یک عدد صحيح را که تعداد ارقامش مشخص نيست از کاربر گرفته و هر رقم را به تعداد آن رقم چاپ کند.

ورودی

در یک خط عدد به شما داده می‌شود. طول عدد از ۱۰۰ کوچکتر است.

خروجی

به ازای هر رقم ابتدا خود آن رقم به همراه ‍ : را چاپ کرده سپس به تعداد آن رقم از همان رقم چاپ کنید.

مثال

ورودی نمونه ۱:



50943

خروجی نمونه ۱:



5: 55555
0:
9: 999999999
4: 4444
3: 333

 

کدی که من نوشتم :

 

#include <stdio.h>


int main()
{

    int num ,t =0,n=0;
    scanf("%d",&num);
    t = num;
       while (t > 0)
    {
        t=t/10;
        n = n +1 ;
    }

    int a [n];

        for (int i=*n-1;i>=0;--i)
    {
        a[i]=num%10;
        num=num/10 ;
    }

          for (int i = 0 ; i < n ; ++ i)
        {

            for (int j = 0 ; j < a[i] ; j ++)
            {
                printf("%d",a[i]);
            }

        printf(":%d\n",a[i]);
    }
    return 0;
}



}




 

 

سوال شده اسفند 22, 1398  بوسیله ی ROOSTAM (امتیاز 74)   2 2 3

1 پاسخ

0 امتیاز
#include <iostream>
#include <vector>
using namespace std;
int main(){
	char c;
	cin.get(c);
	while(c!=' '&&c!='\n'){
		if(c=='0') cout << "0: \n";
		if(c=='1') cout << "1: 1\n";
		if(c=='2') cout << "2: 2 2\n";
		if(c=='3') cout << "3: 3 3 3 \n";
		if(c=='4') cout << "4: 4 4 4 4\n";
		if(c=='5') cout << "5: 5 5 5 5 5\n";
		if(c=='6') cout << "6: 6 6 6 6 6 6\n";
		if(c=='7') cout << "7: 7 7 7 7 7 7 7\n";
		if(c=='8') cout << "8: 8 8 8 8 8 8 8 8\n";
		if(c=='9') cout << "9: 9 9 9 9 9 9 9 9 9\n";
		cin.get(c);
	}
}

سلام

این کدشه

تابع cin.get() یک کاراکتر رو از ورودی میخونه و توی متغیر  c  قرار میده

پاسخ داده شده اسفند 22, 1398 بوسیله ی retamufa (امتیاز 96)   1 3 11
سلام اقا مرسی از جوابت ولی اکه میشه به زبون  c  بنویسید چون من آشنایی با  C++ ندارم اگه هم نمیشه فقط یه توضیح بدین چیکا کردین من خودم بنویسم مرسی
یک متغیر از نوع کاراکتر و با اسم c تعریف میکنیم
بااستفاده از تابع cin.get() نمیدونم تو c  هم هست یا نه یک کاراکتر رو از ورودی توی متغیر c قرار میدیم
با استفاده از ifهای متوالی یا با استفاده از دستور switch  بهش میگیم که برای هر عدد چی کار کنه
در آخر دوباره c  رو از ورودی میخونیم
...