1 / 1 / 0
Регистрация: 04.04.2019
Сообщений: 28
1

Написать программу, которая вводит строку и находит количество чисел в этой строке

14.11.2019, 13:03. Показов 1273. Ответов 3

Author24 — интернет-сервис помощи студентам
Всем привет. Нужно написать программу, которая вводит строку и находит количество чисел в этой строке. Реализацию программы желательно сделать на встроенном в C++ компилятор кода asembler.

Вот мой код, но как вы уже поняли он не работает...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <iostream>
#include <Windows.h>
 
using namespace std;
 
int kol;
char s[50];
 
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    cout << "Введите строку символов: ";
    cin >> s;
    __asm{ 
        pusha
        mov eax, 0  
        mov edi, dword ptr[s]   
        @next:
        mov dl,byte ptr[edi] 
        cmp dl,'0' 
        jl @sdvig 
        cmp dl,'9' 
        jg @sdvig 
        inc eax    
        @skip:
        inc edi     
        mov kol,eax 
        popa
        }
    cout << "Количество чисел в строке: " << kol;
    }
0
Лучшие ответы (1)
14.11.2019, 13:03
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.11.2019, 13:03
Ответы с готовыми решениями:

Написать программу , которая вводит и суммирует любое количество целых чисел
Всем привет ... Будьте добры , Практическая =) 2.Написать программу , которая вводит и суммирует любое количество целых чисел . При...

Написать программу, которая находит количество знаков препинания в заданной символьной строке.
Написать программу, которая находит количество знаков препинания в заданной символьной строке.

Написать программу, которая находит количество знаков препинания в заданной символьной строке.
Написать программу, которая находит количество знаков препинания в заданной символьной строке.:drink:

3
Ушел с форума
Автор FAQ
 Аватар для Mikl___
16352 / 7668 / 1078
Регистрация: 11.11.2010
Сообщений: 13,729
14.11.2019, 13:25 2
Лучший ответ Сообщение было отмечено TheNaVI как решение

Решение

TheNaVI,
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
      pusha
        mov kol, 0 
        mov ecx,количество символов в строке s 
        lea esi,[s]   
        @next:
        lodsb 
        cmp al,'0' 
        jb @skip 
        cmp al,'9' 
        ja @skip
        inc kol 
        @skip:
        loop next 
        popa
1
1 / 1 / 0
Регистрация: 04.04.2019
Сообщений: 28
14.11.2019, 13:45  [ТС] 3
Заработало!
Вот итоговая программа:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include <iostream>
#include <windows.h>
#include <conio.h>
#include <string>
 
using namespace std;
 
int kol;
 
int main()
{
    char s[] = "hel7lo,1234wo8ld6";
 
    __asm
    {       pusha
        mov kol, 0
        mov ecx, 17 //17 - это количество символов в строке (можно использовать функцию для автоматического нахождения)
        lea esi, [s]
        @next:
        lodsb
        cmp al, '0'
        jb @skip
        cmp al, '9'
        ja @skip
        inc kol
        @skip:
        loop @next
        popa
    }
 
    cout << kol;
    getch();
    return 0;
}
0
Ушел с форума
Автор FAQ
 Аватар для Mikl___
16352 / 7668 / 1078
Регистрация: 11.11.2010
Сообщений: 13,729
14.11.2019, 13:46 4
TheNaVI,
ну как? Ассемблерная вставка заработала на VS? Всё! Вижу ответ
1
14.11.2019, 13:46
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
14.11.2019, 13:46
Помогаю со студенческими работами здесь

Написать программу, которая находит количество знаков препинания в заданной символьной строке.
Помогите пожалуйста написать программу , которая находит количество знаков препинания в заданной символьной строке. Чтоб структура...

Написать программу, которая вводит целые числа с клавиатуры и находит сумму
Написать программу, которая вводит целые числа с клавиатуры и находит сумму тех из них, остаток от деления которых на 5 равен 2 или 4....

Разработать программу, которая вводит строку и находит все слова указанной длины n (n вводится)
Разработать программу, которая вводит строку и находит все слова указанной длины n (n вводится)

Разработать программу, которая вводит строку и находит все слова указанной длины n (n вводится)
Разработать программу, которая вводит строку и находит все слова указанной длины n (n вводится).

Написать программу, которая вводит с клавиатуры одномерный массив из 5 целых чисел и выводит количество ненулевых элементов
Написать программу, которая вводит с клавиатуры одномерный массив из 5 целых чисел и выводит количество ненулевых элементов. Перед вводом...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему

Редактор формул (кликните на картинку в правом углу, чтобы закрыть)
Опции темы

Новые блоги и статьи
Обнаружение аномалий в машинном обучении на Python
stackOverflow 19.02.2025
Аномалии — это отклонения от ожидаемого поведения системы, которые могут указывать как на потенциальные проблемы, так и на интересные возможности для исследования. В контексте машинного обучения. . .
Введение в представления (views) Django
stackOverflow 19.02.2025
Представления (views) - ключевой элемент веб-фреймворка Django, который отвечает за обработку HTTP-запросов и формирование ответов. Они действуют как посредники между данными приложения и шаблонами,. . .
Что такое шаблоны Django и как с ними работать
stackOverflow 19.02.2025
Шаблоны Django - основополагающий компонент фреймворка Django, который позволяет эффективно разделять логику приложения и его визуальное представление. Это очень важный инструмент для. . .
Какой Python Web-фреймворк лучший: Django, Flask или FastAPI?
stackOverflow 19.02.2025
В разработке под веб Python занимает особое место благодаря своей универсальности и богатой экосистеме. При создании веб-приложений разработчики сталкиваются с важным выбором - какой фреймворк. . .
Использование кэша Laravel - полный гайд
bytestream 18.02.2025
Кэширование - один из наиболее эффективных способов повышения производительности веб-приложений. В современном мире, где скорость загрузки страниц напрямую влияет на удержание пользователей и. . .
Создаем REST API в Laravel с аутентификацией и Passport
bytestream 18.02.2025
Разработка современных веб-приложений все чаще требует создания надежного и хорошо структурированного API. REST API стал стандартом де-факто для построения взаимодействия между клиентской и серверной. . .
Пайплайны в Laravel - полный гайд
bytestream 18.02.2025
Разработка современных веб-приложений часто требует обработки сложных процессов, состоящих из множества последовательных шагов. Например, при создании системы комментариев может потребоваться. . .
Как правильно использовать @required в Symfony
bytestream 18.02.2025
При разработке приложений на Symfony мы часто сталкиваемся с необходимостью внедрения зависимостей. Фреймворк предоставляет несколько способов управления этим процессом, и одним из таких инструментов. . .
Система безопасности в Laravel: возможности и примеры
Wired 18.02.2025
Каждый день появляются новые виды атак и уязвимостей, которые могут поставить под угрозу конфиденциальные данные пользователей и функционирование всей системы. В этом контексте выбор надежного. . .
Давайте сравним Django и Laravel
Wired 18.02.2025
Django и Laravel - два мощных инструмента, которые часто сравнивают между собой. Оба фреймворка предлагают разработчикам богатый набор возможностей для создания масштабируемых веб-приложений, но. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru