.
Отговор в тема
Резултати от 1 до 6 от общо 6
  1. #1

    Unhappy Помощ по информатика

    Здравейте на всички
    В този раздел има доста теми в които по-знаещи помагат на по-незнаещи по математика, химия и т.н, но не открих тема за помощ по информатика, така че се надявам някой информатик да се намери и да ми помогне със следната задача:
    Да се състави програма, която въвежда от клавиатурата естествено число k. Програмата да извежда всички трицифрени числа, сумата от цифрите на които е равна на числото k.
    До сега след редица размисли и схеми стигнах до следния алгоритъм:

    #include <iostream.h>
    int main()
    {
    int k,d,s,l,ch;
    cin>>k;

    while ((k%k==0) || (k%10==0))
    {
    for (int i=100;i<=999;i++)
    {
    d=i%10;

    s=i%10;

    l=i%10;

    ch=d+s+l;

    if (ch==k)
    {
    cout<<"ch="<<ch<<endl;
    }
    else
    {
    cout<<"nqma takova chislo"<<endl;
    }

    }
    }
    return 0;
    }
    Имам адски много логически грешки в алгоритъма но се надявам някой да ми обясни как стават нещата.
    Не разбирам как да проверя дали k е естествено число и как да изкарам цифрите от всички трицифрени числа, да ги сборувам и да ги съпоставя с k.
    Ще съм много благодарен на малко помощ защото изперквам ;д.
    Мерси!

  2. #2
    d=i%10; - вади единиците

    s=i%10; - грешно... -> s=i/10%10 - вади десетиците

    l=i%10; - грешно... -> l=l/100 - вади стотиците

    Естествените числа са 1,2,3..n. Щом записваш в int тя програмата ще си гръмне, ако му дадеш грешен вход, тъй че не се притеснявай (C-то е грозотия тъй, че може да бъркам тук, ама кой нормален човек го ползва?!)...

    Също, ако искаш сложи един if преди да въртиш цикъла
    if(ch<0 || ch>27) {
    cout<<"Invalid"
    }

    и цикъла го бутни в else... щото реално няма как сбора от цифрите на 3 цифрено число да е <0 или >27

    И тоя while го махай, че т'ва си е 100%-ов безсмислен безкраен цикъл... Сми не хванах въобще идеята му де...
    Последно редактирано от Domad : 12-20-2011 на 21:35
    ...

  3. #3
    Мерси много, но все още не загрявам как трябва да бъде целия алгоритъм...както и да е. Поне разбрах как се вадят цифрите от число.
    А за С-то, такова учим в у-ще, нямам голям избор. А и не е чак такъв шит, използва се.

    Ако има още някакви идеи са добре дошли

  4. #4
    Мега фен Аватара на Chacho
    Регистриран на
    Nov 2006
    Мнения
    15 573
    Цитирай Първоначално написано от vpowerrr Виж мнението
    Мерси много, но все още не загрявам как трябва да бъде целия алгоритъм...както и да е. Поне разбрах как се вадят цифрите от число.
    А за С-то, такова учим в у-ще, нямам голям избор. А и не е чак такъв шит, използва се.

    Ако има още някакви идеи са добре дошли
    Цикъл, условен оператор и алгоритъмът за изваждане на числа са ти нужни.
    Има 10 вида хора. Тези, които могат да четат двоичен код и тези, които не могат.

  5. #5
    Стана : )) Мерси

  6. #6
    Мега фен Аватара на Chacho
    Регистриран на
    Nov 2006
    Мнения
    15 573
    Имал съм в предвид алгоритъм за изваждане на цифри от число, но явно си се досетил сам, пък и Domad ти беше помогнал с него. Пак заповядай!
    Има 10 вида хора. Тези, които могат да четат двоичен код и тези, които не могат.

Правила за публикуване

  • Вие не можете да публикувате теми
  • Вие не можете да отговаряте в теми
  • Вие не можете да прикачвате файлове
  • Вие не можете да редактирате мненията си