Премини към съдържанието

Препоръчан отговор


Здравейте, трябва напиша програма, която въвежда число и трябва да промени всички цифри, които се делят на 3 да ги раздели на 3, ако не се делят на 3 да увеличи четните с 1 и нечетните с 2. Начинаещ съм и ми е трудно. Ще бъда благодарен ако някой ми даде някакви насоки(не готов код), искам сам да я напиша.

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

преди 16 минути, Бориславв написа:

Здравейте, трябва напиша програма, която въвежда число и трябва да промени всички цифри, които се делят на 3 да ги раздели на 3, ако не се делят на 3 да увеличи четните с 1 и нечетните с 2. Начинаещ съм и ми е трудно. Ще бъда благодарен ако някой ми даде някакви насоки(не готов код), искам сам да я напиша.

Здравей, с програмиране не съм се занимавала от години, но ако не се лъжа, трябва да използваш библиотеката iostream.h за въвеждането на число от потребител. След въвеждането на числото имаш нужда от вложен if, т.е. първо дали се дели на 3 и после дали е четно или не числото. Накрая за да видиш какво се е случило можеш да изкараш резултата със cout. Надявам се да съм помогнала.

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

разделяш числото на съставните му цифри използвайки модул от 10,

обработваш ги според условието и после сглобяваш ново число от тях.

int modify(int x)
{
    int t,c,n;
    n=1; t=0;
    while (x)
    {
        c=x%10;
        if (c%3==0) c/=3;
        else if(c%2==0) c+=1;
        else c+=2;
        t+=c*n;
        n*=10;
        x/=10;
    }
    return t;
}

Не съм сигурен дали това е правилния начин при обработката на отрицателни числа,

може да се запази знака и числото да се обработи като положително.

int modify(int x)
{
    int t,c,n,s;
    if (x<0)
    {
        s=-1;
        x=-x;
    } else s=1;
    
    n=1; t=0;
    while (x)
    {
        c=x%10;
        if (c%3==0) c/=3;
        else if(c%2==0) c+=1;
        else c+=2;
        t+=c*n;
        n*=10;
        x/=10;
    }
    return t*s;
}

 

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Регистрирайте се или влезете в профила си за да коментирате

Трябва да имате регистрация за да може да коментирате това

Регистрирайте се

Създайте нова регистрация в нашия форум. Лесно е!

Нова регистрация

Вход

Имате регистрация? Влезте от тук.

Вход

×

Информация

Поставихме бисквитки на устройството ви за най-добро потребителско изживяване. Можете да промените настройките си за бисквитки, или в противен случай приемаме, че сте съгласни с нашите условия за ползване.