Премини към съдържанието
Форумът в приложение

По-лесно сърфиране. Научи повече.

Kaldata.com - Форуми

Приложение на форума на цял екран с push известия, значки и други.

За да инсталирате това приложение на iOS и iPadOS
  1. Докоснете Иконата за споделяне в Safari
  2. Превъртете менюто и докоснете Добавяне към началния екран.
  3. Докоснете Добавяне в горния десен ъгъл.
За да инсталирате това приложение на Android
  1. Докоснете менюто с 3 точки (⋮) в горния десен ъгъл на браузъра.
  2. Докоснете Добавяне към началния екран или Инсталиране на приложение.
  3. Потвърдете, като докоснете Инсталиране.

Добре дошли!

Добре дошли в нашите форуми, пълни с полезна информация. Имате проблем с компютъра или телефона си? Публикувайте нова тема и ще намерите решение на всичките си проблеми. Общувайте свободно и открийте безброй нови приятели.

Моля, регистрирайте се за да публикувате тема и да получите пълен достъп до всички функции.

 

Visual Basic Програма

Featured Replies

Здравейте на всички. Трябва ми огромна помощ за една програма, а тя е следната:

След въвеждане на цяло положително число, да се изведе броят цифри от които е съставено това число. Дефинирайте, каквито прецените контроли в графичния интерфейс и променливи в сорс-кода.

Благодаря предварително за помощта.

пак ли?

а вие какво написахте до сега?

 

лека подсказка

Число%10 какво дава?

  • Автор

Ами, това е проблема, че нищо не съм написал, защото незнам какво да пиша :)


Тези програми не ги разбирам много

ами..... а ако почетете малко няма да ви заболи нали ?

подсказал съм ви как става.

Здравейте на всички. Трябва ми огромна помощ за една програма, а тя е следната:

След въвеждане на цяло положително число, да се изведе броят цифри от които е съставено това число. Дефинирайте, каквито прецените контроли в графичния интерфейс и променливи в сорс-кода.

Благодаря предварително за помощта.

Алгоритничен вариант на задачата, разписан на C - въпреки, че не е Visual Basic, аритметичните операции са еквивалентни. На Вас ви е необходима следната част:

while(num){
      num=num/10;
      count++;
  }

Тук има разписан код, който директно използва методи във Visual Basic, чрез които да намери броя на цифрите в едно целочислено число. Тъй като подозирам, че задачата не е просто да извикате една функция, приложеният по-горе код ще Ви е в по-голяма полза.

 

 

лека подсказка

Число%10 какво дава?

Дава остатък, който в случая е абсолютно ненужен. Подсказката трябваше да е какво дава число/10, когато деленето е целочислено...

а аз го знам така

 

while(num/10){
num=num%10;
count++;
}

хубаво де

100

1 стотица

0 десетици

0 единици

 

1/100%10

1/10%10

10%10%10

Да ама не - така както си го написал ще изкара count=0 за едноцифрени числа и count=1 за всички останали, а би трябвало да показва броя на цифрите - така че не върши никаква работа . Кода който е дал soundtracker е доста по-добре - дъни се само при num=0.

Аз предлагам да се преобразува числото в низ, с функцията за преобразуване на число в низ и след това с функцията за определяне на дължината на низ да се определи броя на цифрите. 

  • Автор

Благодаря!!!


Алгоритничен вариант на задачата, разписан на C - въпреки, че не е Visual Basic, аритметичните операции са еквивалентни. На Вас ви е необходима следната част:

while(num){
      num=num/10;
      count++;
  }

Тук има разписан код, който директно използва методи във Visual Basic, чрез които да намери броя на цифрите в едно целочислено число. Тъй като подозирам, че задачата не е просто да извикате една функция, приложеният по-горе код ще Ви е в по-голяма полза.

 

 

Дава остатък, който в случая е абсолютно ненужен. Подсказката трябваше да е какво дава число/10, когато деленето е целочислено...

А преди този код какво трябва да напиша

Благодаря!!!

А преди този код какво трябва да напиша

Трябва да дефинирате променливите, да прочетете данните и да изкарате резултата. Това, което съм приложил като код е "сърцето" на алгоритъма Ви. Не е цялостна програма, но не мисля, че ще е проблем да си разпишете изброените в предното изречение неща.

 

 

 Кода който е дал soundtracker е доста по-добре - дъни се само при num=0.

Мда, това трябва да се има впредвид. Но мисля, че има една хитринка, която ще покрие и този случай. Ако от while, направим цикъла do/while - тогава така или иначе ще се изпълни веднъж, преди да направи проверката и ще избягаме от случая в който пропускаме нулата. Ще се получи нещо подобно:

do {
    count++;
    num /= 10;
} while (num);

@petie1 Имам спомени, че с още малко код, по това, което сте приложил, задачата става за сумиране на цифрите в едно число. Ползата от операция модул е, че когато се използва заедно с делене на 10, можем да вземем стойността на последната цифра от числото, което обработваме. За намиране на броя на цифрите, ние не се нуждаем от качествената стойност на това, което целочисленото делене ще унищожи/игнорира. Поради това, числото, което изследваме е добре да се третира с презумпцията за символен низ.

 

P.S. Едва сега видях, че съм направил доста добър лапсус ... 

 

АлгоритНичен вариант на задачата, разписан на C

 

Поздрави !

Редактирано от soundtracker (преглед на промените)

@petie1 Имам спомени, че с още малко код, по това, което сте приложил, задачата става за сумиране на цифрите в едно число. Ползата от операция модул е, че когато се използва заедно с делене на 10, можем да вземем стойността на последната цифра от числото, което обработваме. За намиране на броя на цифрите, ние не се нуждаем от качествената стойност на това, което целочисленото делене ще унищожи/игнорира. Поради това, числото, което изследваме е добре да се третира с презумпцията за символен низ.

 

да бе точно така беше ама че съм и аз бъркам алгоритмите

най добре си е да е стринг

Това направо си е за "Бисерите ..."

  • 4 години по-късно...

Архивирана тема

Темата е твърде стара и е архивирана. Не можете да добавяте нови отговори в нея, но винаги можете да публикувате нова тема, в която да продължи дискусията. Регистрирайте се или влезте във вашия профил за да публикувате нова тема.

Разглеждащи това в момента 0

  • Няма регистрирани потребители разглеждащи тази страница.

Дарение

  • Подкрепи съществуването на форума - направи дарение
    25%
    Дарени 252.69 EUR от нужните 1,000.00 EUR

Бюлетин

Получавайте известие, когато има важна промяна или новина свързана с форума.

Профил

Навигация

Търсене

Търсене

Конфигуриране на push известия в браузъра

Chrome (Android)
  1. Докоснете иконата на катинар до адресната лента.
  2. Докоснете Разрешения → Известия.
  3. Променете предпочитанията си.
Chrome (Desktop)
  1. Кликнете върху иконата на катинар в адресната лента.
  2. Изберете Настройки на сайта.
  3. Намерете Известия и коригирайте предпочитанията си.