0 / 0 / 0
Регистрация: 11.06.2018
Сообщений: 4
|
|
1 | |
Ввести строку С, определить чего в строке больше цифр, букв или знаков пунктуации11.06.2018, 11:24. Показов 1933. Ответов 13
Метки нет (Все метки)
Сделать программу на ассемблере.
Задание: Ввести строку С,определить чего в строке больше цифр,букв или знаков пунктуации.
0
|
11.06.2018, 11:24 | |
Ответы с готовыми решениями:
13
Дана последовательность символов, заканчивающихся ‘!’. Определить каких символов больше: маленьких латинских букв или цифр Последовательность из цифр, букв и знаков. Подсчитать чего больше и составить строки только из цифр, букв и знаков Определить число прописных, строчных букв а также число цифр и знаков пунктуации в строке Множества.Дан текст из строчных латинских букв и цифр. Определить чего – букв или цифр – больше в этом тексте |
0 / 0 / 0
Регистрация: 11.06.2018
Сообщений: 4
|
||||||
14.06.2018, 10:56 [ТС] | 3 | |||||
Есть код который подсчитивает количество букв и цифр в строке,хочу добавить чтобы считало еще и знаки пунктуации,но хз как
0
|
Asm/C++/Delphi/Py/PHP/VBA
|
||||||
14.06.2018, 18:15 | 5 | |||||
Я тут, кстати, недавно придумал способ проверки символа на букву (причём, неважно: русскую или английскую, заглавную или строчную), правда, под Windows.
Но всё равно напишу, может, кому пригодится. Вызываем CharLower и CharUpper. Если результат разный, значит буква:
3
|
Модератор
|
||||||
15.06.2018, 12:55 | 6 | |||||
0
|
6770 / 2739 / 384
Регистрация: 17.02.2013
Сообщений: 4,047
|
|||||||||||
16.06.2018, 20:21 | 7 | ||||||||||
Вот примерно так индусы и пишут. Глаза бы мои не видели. Особенно IsDigit через scasb.
4
|
Модератор
|
||||||
16.06.2018, 20:49 | 8 | |||||
Ethereal, спасибо за критику.
Но в своё оправдание скажу - варюсь в собственном соку и от других форумчан гениальных примеров не вижу - только дружеские "обнимашки" и плюсики за эти "обнимашки". И добавлю царапающий глаз пример
0
|
Модератор
|
||||||
16.06.2018, 21:05 | 10 | |||||
А так негламурно?
Понял - это же функция с двумя результатами CF и число. Спасибо, запомню.
0
|
Asm/C++/Delphi/Py/PHP/VBA
|
||||||
16.06.2018, 21:15 | 11 | |||||
Так будет CF=1 при любом значении al<='9'.
Тогда уж так:
Но смысл? Когда sub+cmc можно заменить на один add... Добавлено через 2 минуты Только call IsDigit должен быть последним, т.к. он «портит» al.
0
|
Модератор
|
|
16.06.2018, 21:19 | 12 |
Но это не обязательно к данной программе - можно же использовать в другом месте для фильтрации ввода. И как пример применения не обязательно применительно к цифрам.
0
|
6770 / 2739 / 384
Регистрация: 17.02.2013
Сообщений: 4,047
|
|
17.06.2018, 13:53 | 13 |
Отрицательных чисел никогда не видел что-ли ?
-'0' это код символа 0 со знаком минус. Вот что это. Добавлено через 5 минут Надо не запоминать. А дойти до состояния придумывания такого на ходу. Ведь практикуешься же постоянно. Пора бы. Ассемблер, он для того и ассемблер, чтобы использовать то, что он позволяет на всю катушку. А иначе будет не лучше, чем gcc -O3 Добавлено через 15 минут Мысль такая. Надо воспринимать cmp не как часть готового заклинания CMP Jcond , а уяснить, что она делает. Представлять себе, что cmp вычитает (только результат теряет) и когда вычитает из меньшего большее, то выставляет флаг C. Потому-что был заем. Можно образно представлять себе заем. Можно представлять себе как при сложении add перенос пинком вылетает за пределы байта/слова. И когда появится такое образное представление, написание такого даже трюкачеством казаться перестанет. Нормальным, естественным писанием на ассемблере казаться будет.
1
|
Asm/C++/Delphi/Py/PHP/VBA
|
||||||
17.06.2018, 18:55 | 14 | |||||
Сообщение было отмечено ФедосеевПавел как решение
Решение
Ещё один вариант:
2
|
17.06.2018, 18:55 | |
17.06.2018, 18:55 | |
Помогаю со студенческими работами здесь
14
Дан текст из букв и цифр. Определить чего больше букв или цифр. В С++ Выяснить, чего больше в строке - букв или цифр Определить чего больше в тексте: букв или цифр Программа с функцией, которая в заданной строке проверяет, чего больше: букв или цифр Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |