Форум программистов, компьютерный форум, киберфорум
QBasic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.94/18: Рейтинг темы: голосов - 18, средняя оценка - 4.94
0 / 0 / 0
Регистрация: 28.02.2021
Сообщений: 1

Подсчитать все заданные буквы в тексте

28.02.2021, 12:54. Показов 4311. Ответов 31
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста с задачей, очень срочно надо. Не могу понять как ее сделать
Дан текст и нужно сосчитать в нем все заданные буквы
Но считает все вместе с пробелом
Прошу помогите, не могу понять как сделать, буду очень благодарен!

QBasic/QuickBASIC
1
2
3
4
5
6
7
8
9
10
11
12
13
14
CLS
DIM s AS STRING
DIM r AS DOUBLE
DIM i AS INTEGER, j AS INTEGER, n AS INTEGER
r = 0
INPUT "Vvedi text: ", s
FOR i = 1 TO LEN(s)
    n = 0
    FOR j = 1 TO LEN(s)
        IF MID$(s, i, 1) = MID$(s, j, 1) THEN n = n + 1
    NEXT j
    r = r + 1
NEXT
PRINT "Bukv v texte ="; INT(r)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.02.2021, 12:54
Ответы с готовыми решениями:

Подсчитать количество букв Z в тексте и все буквы J заменить на Y
Подсчитать количество букв Z в тексте. Все буквы J заменить на Y, полученный текст напечатать.

Поменять буквы в тексте, на заданные
Есть edit, куда вводим текст. Есть еще пару edit, например для буквы а и для буквы б. Т.е. edit1 для ввода текста. Edit 2 для ввода...

Подсчитать сколько раз в тексте встречаются буквы "л" и "а" стоящие отдельно.заменитьь все буквы "л" на "77"
Задача.Подсчитать сколько раз в тексте встречаются буквы "л" и "а" стоящие отдельно.заменитьь все буквы "л" на "77"....

31
COM‐пропагандист
 Аватар для Замабувараев
936 / 785 / 149
Регистрация: 18.12.2014
Сообщений: 2,256
Записей в блоге: 4
03.03.2021, 06:15
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Quiet Snow Посмотреть сообщение
И как? Эффективнее стало?
Эффективно в смысле быстро? Да, пул потоков и порт завершения ввода‐вывода быстрее, чем отдельный поток на каждого клиента. Хотя на глаз заметно будет только при большом количестве подключений. Просто модель «обработка запроса в отдельном потоке» намного проще для понимания и программирования, а у порты завершения ввода‐вывода — это асинхронность, требуются синхронизации доступа к данным и прочее наследование от OVERLAPPED.
Цитата Сообщение от Quiet Snow Посмотреть сообщение
А почему отдельную прогу на самом бейсике не сделаешь?
Так уже есть утилита make, вот пусть она мои бесиковые программы собирает.
0
 Аватар для Pro_grammer
6807 / 2840 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
03.03.2021, 07:04
Цитата Сообщение от Quiet Snow Посмотреть сообщение
Pro_grammer, а ты там как?
На службе завал, корректировка БД, монотонный ручной труд
Нужно найти время и заняться бы этой прогой, людям нравится, столько "хотелок " уже парни предложили, да всё никак не могу выбрать такой кусок времени.
0
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
03.03.2021, 10:47
Цитата Сообщение от Pro_grammer Посмотреть сообщение
Нужно найти время и заняться бы этой прогой, людям нравится, столько "хотелок " уже парни предложили
Круто, полезная штука.

Цитата Сообщение от Замабувараев Посмотреть сообщение
Просто модель «обработка запроса в отдельном потоке» намного проще для понимания и программирования, а у порты завершения ввода‐вывода — это асинхронность, требуются синхронизации доступа к данным и прочее наследование от OVERLAPPED.
А ты привязывал это к колбеку? Или у тебя сложнее async модель?
Просто краем уха слышал что там можно подвязать к колбек, чтобы не за гонять поток со слипами.
Мне всё равно это потом копошить, тоже async нужен, но такой скажем самый простенький.
Пока ещё не разгребал WinSock, так местами что-то читал поверхностно.
0
COM‐пропагандист
 Аватар для Замабувараев
936 / 785 / 149
Регистрация: 18.12.2014
Сообщений: 2,256
Записей в блоге: 4
03.03.2021, 12:39
Цитата Сообщение от Quiet Snow Посмотреть сообщение
Или у тебя сложнее async модель?
Для любой Вшиндоуз асинхронность — это значит всё что на основе OVERLAPPED.
Цитата Сообщение от Quiet Snow Посмотреть сообщение
А ты привязывал это к колбеку?
Функцию обратного вызова (процедуру завершения) можно отправить туда где есть очередь асинхронных процедур: это Read/WriteFileEx, WSARecv/Send. А пакеты ввода‐вывода от IoCompletionPort идут через очередь этого порта, а не через очередь асинхронных процедур. Пакеты возвращает функция GetQueuedCompletionStatus, и там нет параметра для указания функции обратного вызова.
Цитата Сообщение от Quiet Snow Посмотреть сообщение
тоже async нужен, но такой скажем самый простенький
Тогда для сокетов сгодится связка WSAResv/WSASend + WSAGetOverlappedResult или какая‐нибудь функция ожидания WaitForSingleObject, или функция тревожного ожидания типа WaitForSingleObjectEx для вызова процедуры завершения.

Добавлено через 10 минут
Ещё можно поместить процедуру в очередь асинхронных процедур конкретного потока через QueueUserAPC. Это тоже асинхронность, и функции Read/WriteFileEx, WSARecv/Send именно так и делают.
1
 Аватар для CoderHuligan
1753 / 1019 / 257
Регистрация: 30.06.2015
Сообщений: 5,132
Записей в блоге: 56
03.03.2021, 14:23
Цитата Сообщение от Замабувараев Посмотреть сообщение
Почему до сих пор они пишут программы для ДОС?
Линуксом и виндовсом нельзя управлять оборудованием, а dos можно. Вообще, с
Цитата Сообщение от Замабувараев Посмотреть сообщение
Почему до сих пор они пишут программы для ДОС?
DOS, как система реального времени, используется для управления оборудованием и из-за компактности. Это почти единственная операционка, которую можно понять одним человеком. Виндовс и линукс состоят из миллион строк кода, даже прочитать которые жизни не хватит. Более того: в условиях военого времени и Линукс, и Видовс обречены на умирание.АНБ давно встроил свои инструменты в Линукс, ну а в виндовс они присутствуют изначально. Достаточно сработать таймеру или отдать приказ по сети и все эти линуксы и виндовсы накроются медным тазом. Уже тестировали на одном из наших оборонных заводах.. Так оно и будет на самом деле. Вы меня еще вспомните. Останется только голое железо и ... DOS. И вот те, кто "умеют в dos" смогут что-то там восстановить, если еще что-то можно будет восстановить. Это расплата.
Виндовс после 98 винды пошел не в ту сторону. 98 была в виде надстройки над dos. По прежнему игры писались под dos и все были счастливы. Можно было свободно уходить в реальный режим и пользоваться полной скоростью процессора и преимуществами реального режима. А потом опять уходить в защищенный режим - в виндовс. Это было отлично! У потребителя был выбор. Производители игр могли напрямую работать с оборудованием. Когда же виндовс подмяла под себя все и вся, потребителю не осталось выбора.
---------
Думаю, надо продолжать изучать dos. Что-то писать под него, какие-то утилиты, которые позволят реанимировать железо. Это будет реальной пользой миру. Драйвера и пр.
2
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
03.03.2021, 18:22
Цитата Сообщение от CoderHuligan Посмотреть сообщение
Это расплата.
Не, коли так, расплата будет, когда останутся одни эльбрусы. Вот тогда реально чёрт знает что с ними делать.)))

Цитата Сообщение от Замабувараев Посмотреть сообщение
Функцию обратного вызова (процедуру завершения) можно отправить туда где есть очередь асинхронных процедур: это Read/WriteFileEx, WSARecv/Send. А пакеты ввода‐вывода от IoCompletionPort идут через очередь этого порта, а не через очередь асинхронных процедур. Пакеты возвращает функция GetQueuedCompletionStatus, и там нет параметра для указания функции обратного вызова.
Чёт сложновато, я это не разгребу тупо.
Вроде сёкет можно подвязать к сообщ потока. Люди пишут про WSAAsyncSelect, или это лажа?
https://www.firststeps.ru/mfc/net/socket/r.php?6
Мне, правда, ваще не нравится как эта статья написана.
А про WaitForSingleObject что-то краем уха слышал. Надо будет смотреть.
1
COM‐пропагандист
 Аватар для Замабувараев
936 / 785 / 149
Регистрация: 18.12.2014
Сообщений: 2,256
Записей в блоге: 4
03.03.2021, 18:39
Цитата Сообщение от Quiet Snow Посмотреть сообщение
WSAAsyncSelect
Несмотря на то, что в названии этой функции есть слово Async, она работает с сокетом в неблокирующем режиме, а не асинхронном. И только для ГУИ. Аналогичная неблокирующая функция для не ГУИ — WSAAsyncSelect.

Асинхронный и неблокирующий — это разные вещи.

Асинхронное чтение с сокета — это WSARecv (или ReadFileEx) с указателем на OVERLAPPED, а потом последующее тревожное ожидание на WaitForSingleObjectEx.

Добавлено через 3 минуты
Для простых программ‐клиентов имеющих всего одно соединение с сервером, проще всего запустить второй поток и в нём крутить в цикле recv.
1
Модератор
10068 / 3913 / 886
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
03.03.2021, 19:14
Замабувараев, ты вручную все делаешь? Как насчет HTTP Server API?

Добавлено через 1 минуту
Цитата Сообщение от Замабувараев Посмотреть сообщение
Да, пул потоков и порт завершения ввода‐вывода быстрее, чем отдельный поток на каждого клиента. Хотя на глаз заметно будет только при большом количестве подключений.
Еще выгода от пула в том что не требуется время на создание потока, а это довольно тяжелая операция. Проще передать уже ожидающему потоку обработку запроса.

Добавлено через 5 минут
Цитата Сообщение от CoderHuligan Посмотреть сообщение
АНБ давно встроил свои инструменты в Линукс, ну а в виндовс они присутствуют изначально.
Ну с такой логикой и оборудование может содержать бекдоры.
1
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
04.03.2021, 07:57
Цитата Сообщение от CoderHuligan Посмотреть сообщение
Можно было свободно уходить в реальный режим и пользоваться полной скоростью процессора
Не знаю про какую ты скорость, у меня 12 ядерный райзен, под DOS будет работать одно ядро.
Комп по факту станет хуже Core 2 Duo.
Но так да, если ШИМ руками делать - наверное лучше DOS.

Цитата Сообщение от The trick Посмотреть сообщение
Ну с такой логикой и оборудование может содержать бекдоры.
Были кстати разговоры про прошивки жёстких дисков. Если так подумать - это вообще адская штука.
Система запрашивает exe-файл, диск фигак, берёт и подменяет бинарник, или часть кода,
причём на стадии загрузки ОС.

Добавлено через 5 часов 44 минуты
Цитата Сообщение от Замабувараев Посмотреть сообщение
Несмотря на то, что в названии этой функции есть слово Async, она работает с сокетом в неблокирующем режиме, а не асинхронном. И только для ГУИ. Аналогичная неблокирующая функция для не ГУИ — WSAAsyncSelect.
Асинхронный и неблокирующий — это разные вещи.
Асинхронное чтение с сокета — это WSARecv (или ReadFileEx) с указателем на OVERLAPPED, а потом последующее тревожное ожидание на WaitForSingleObjectEx.

Для простых программ‐клиентов имеющих всего одно соединение с сервером, проще всего запустить второй поток и в нём крутить в цикле recv.
Ясно спасибо за инфу. Потом буду смотреть что как. Задачи то на самом деле не суровые, сервер и до 10 клиентов.
0
 Аватар для Pro_grammer
6807 / 2840 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
04.03.2021, 10:40
Цитата Сообщение от Замабувараев Посмотреть сообщение
Пишу вебсервер, чтобы был быстрый и компактный.
Видел подобное, на PureBasic их есть написано с десяток, включая Atomic Web Server в основном комплекте. Насчет скорости не знаю, компактный 47К? В старых версиях был всего 15k, но сейчас exe-шник на Пурике разжирел
Написан без WIN API, чисто на встроенных функциях, для всех поддерживаемых ОС.
0
COM‐пропагандист
 Аватар для Замабувараев
936 / 785 / 149
Регистрация: 18.12.2014
Сообщений: 2,256
Записей в блоге: 4
04.03.2021, 17:21
Цитата Сообщение от Замабувараев Посмотреть сообщение
Аналогичная неблокирующая функция для не ГУИ — WSAAsyncSelect
Исправление: WSAEventSelect

Добавлено через 16 минут
Цитата Сообщение от The trick Посмотреть сообщение
Как насчет HTTP Server API?
Там не проконтролируешь время жизни сокетов, а на икспишечке не сработает HTTPS в виде TLS 1.2 и TLS 1.3.

Добавлено через 32 секунды
Цитата Сообщение от The trick Посмотреть сообщение
Как насчет HTTP Server API?
Там не проконтролируешь время жизни сокетов, а на икспишечке не сработает HTTPS в виде TLS 1.2 и TLS 1.3.

Добавлено через 4 часа 51 минуту
Цитата Сообщение от Pro_grammer Посмотреть сообщение
Видел подобное, на PureBasic их есть написано с десяток, включая Atomic Web Server в основном комплекте. Насчет скорости не знаю, компактный 47К? В старых версиях был всего 15k, но сейчас exe-шник на Пурике разжирел
Написан без WIN API, чисто на встроенных функциях, для всех поддерживаемых ОС.
Насколько они эффективны? Применяют ли они epoll или IoCompletionPort?
0
 Аватар для Pro_grammer
6807 / 2840 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
04.03.2021, 17:51
Цитата Сообщение от Замабувараев Посмотреть сообщение
Применяют ли они epoll или IoCompletionPort?
Что там под капотом я не знаю, тестировал на обычном html с css, открывал смартфоном, телевизором умным и андроид приставкой, работает нормально. А ещё в Пурике есть CGI библиотека тоже кроссплатформенная, там вообще широкие возможности.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.03.2021, 17:51

Во введенном тексте удалить все буквы русского алфавита и подсчитать количество прописных букв латинского алфавита
Добрый день! Нужно решить задачу во введенном тексте удаляет все буквы русского алфавита и подсчитывает количество прописных букв...

В многострочном тексте необходимо удалить все заданные символы
Здравствуйте! В многострочном тексте (char text) необходимо удалить все заданные символы. Пустые строки не печатать. Если все строки...

В многострочном тексте необходимо удалить все заданные символы
Здравствуйте! В многострочном тексте (char text) необходимо удалить все заданные символы. Пустые строки не печатать. Если все строки...

В тексте все буквы "s" заменить "d", подсчитать количество замен
В тексте все буквы "s" заменить "d", подсчитать количество замен.

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


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

Или воспользуйтесь поиском по форуму:
32
Ответ Создать тему
Новые блоги и статьи
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru