Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.62/13: Рейтинг темы: голосов - 13, средняя оценка - 4.62
0 / 0 / 0
Регистрация: 25.03.2013
Сообщений: 20

Разработать алгоритм и программу для решения задачи с использованием строк символов

01.05.2013, 19:01. Показов 3449. Ответов 29
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дана строка символов. Найти самое длинное слово, начинающееся с буквы ''я'', и вывести его в обратном порядке
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
01.05.2013, 19:01
Ответы с готовыми решениями:

Разработать алгоритм и программу для решения задачи с использованием строк символов
Дана строка символов. Определить количество слов, начинающихся с буквы ''а'', вывести на печать самое длинное слово, начинающееся с...

Разработать алгоритм и программу для решения задачи с использованием типа запись
Даны сведения о студентах группы: ФИО студента, дата рождения студента, место рождения студента. Вывести список группы по убыванию года...

Разработать алгоритм и программу для решения задачи
Дан файл f, компоненты которого являются действительными числами. Найти: а) сумму компонент файла f; б) последнюю компоненту файла.

29
 Аватар для BumerangSP
4311 / 1423 / 463
Регистрация: 16.12.2010
Сообщений: 2,939
Записей в блоге: 3
02.05.2013, 15:21
Студворк — интернет-сервис помощи студентам
косяк с пустой строкой и со строкой без слов.
Миниатюры
Разработать алгоритм и программу для решения задачи с использованием строк символов  
1
 Аватар для Ternsip
670 / 198 / 29
Регистрация: 10.05.2012
Сообщений: 595
02.05.2013, 15:35
m09, всё намного проще. Для такой задачи тут слишком много сообщений
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
#include <iostream>
#include <algorithm>
#include <map>
#include <string>
 
using namespace std;
 
int main(){
    freopen("input.txt", "rt", stdin);
    freopen("output.txt", "wt", stdout);
    map <int, string> s;
    string str;
    while (cin >> str) {
        s[str.length()] = str;
    }
    map <int, string>::iterator it = s.end();
    if (it == s.begin())
        return 0;
    do {
        --it;
        if ((it->second)[0] == 'z') {
            str = it->second;
            reverse(str.begin(), str.end());
            cout << str;
            return 0;
        }
    } while (it != s.begin());
    return 0;
}
Добавлено через 2 минуты
m09, пример ввода в input.txt
a a a aaa a zaz za aaaaaa gfasfasfz zaa gzgzgzg zaaaf
0
381 / 352 / 113
Регистрация: 17.05.2012
Сообщений: 1,049
02.05.2013, 21:26
BumerangSP, извините что так долго, дела были учел вариант пустой строки и строки без слов

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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
#include <iostream>
#include <iterator>
#include <string>
#include <sstream>
#include <Windows.h>
using namespace std;
 
void find_word(string _str){
    string delim(" .,!?");
 
    if(_str.size() != 0){
        string::size_type pos_m, pos_m2, pos1, pos2;;
        pos_m = _str.find_first_not_of(delim);
 
        if(pos_m != string::npos){
            pos_m2 = _str.find_first_of(delim, pos_m);
            if(pos_m2 == string::npos && _str[pos_m] == 'я'){
                pos1 = string::npos;
                pos_m2 = _str.length();
            }
            else if(pos_m2 == string::npos && _str[pos_m] != 'я'){
                pos_m2 = string::npos;
                pos1 = string::npos;
            }
            else if(pos_m2 != string::npos && _str[pos_m] != 'я'){
                pos1 = pos_m2;
                pos_m = pos_m2 = 0;
            }
            else
                pos1 = pos_m2;
 
            while(pos1 != string::npos){
                pos1 = _str.find_first_not_of(delim, pos1);
 
                if(pos1 != string::npos){
                    pos2 = _str.find_first_of(delim, pos1);
                    if(pos2 == string::npos)
                        pos2 = _str.length();
        
                    if(_str[pos1] == 'я'){
                        if((pos2 - pos1) > (pos_m2 - pos_m)){
                            pos_m = pos1;
                            pos_m2 = pos2;
                        }
                    }
 
                    if(pos2 == _str.length())
                        pos1 = string::npos;
                    else
                        pos1 = pos2;
                }
            }
 
            cout << endl;
            if(pos_m2 != string::npos){
                for(int i = pos_m2 - 1; i >= static_cast<int>(pos_m); i--)
                    cout << _str[i];
            }
        }
    }
}
 
int _tmain(int argc, _TCHAR* argv[])
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
 
    string str("");
    copy(str.begin(), str.end(), ostream_iterator<char>(cout));
    find_word(str);
 
    cout << "\n\n";
    return 0;
}
0
 Аватар для BumerangSP
4311 / 1423 / 463
Регистрация: 16.12.2010
Сообщений: 2,939
Записей в блоге: 3
03.05.2013, 13:55
yoghurt92, да ничего. Пока ошибок не найдено.
0
0 / 0 / 0
Регистрация: 25.03.2013
Сообщений: 20
14.05.2013, 19:10  [ТС]
ludi a pokoroche nel'zya ee napisat'??? pochemu to eta programka owibku vydaet
0
 Аватар для Ternsip
670 / 198 / 29
Регистрация: 10.05.2012
Сообщений: 595
14.05.2013, 19:23
m09, я вам написал достаточно коротко, вам осталось только подключить русский setlocate

Добавлено через 30 секунд
Цитата Сообщение от Ternsip Посмотреть сообщение
'z'
и вот тут исправить на 'я'

Добавлено через 32 секунды
m09, если не сообразили зачем
C++
1
2
    freopen("input.txt", "rt", stdin);
    freopen("output.txt", "wt", stdout);
тогда сотрите его

Добавлено через 8 минут
m09,
Вот совсем коротко
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <algorithm>
#include <string>
 
using namespace std;
 
int main(){
    string str, ans;
    while (cin >> str) {
        if (str.length() > ans.length() && str[0] == 'я') 
            ans = str;
    }
    if (ans == "")
        ans = "аволс огокат тен";
    reverse(ans.begin(), ans.end());
    cout << ans;
    return 0;
}
1
0 / 0 / 0
Регистрация: 25.03.2013
Сообщений: 20
14.05.2013, 19:24  [ТС]
a u vas eta programma zapuskaetsya?
0
 Аватар для Ternsip
670 / 198 / 29
Регистрация: 10.05.2012
Сообщений: 595
14.05.2013, 19:26
m09, разумеется на microsoft visual studio c++ 2012 в empty project делаю, только я ещё файлы подключал input.txt и output.txt
тогда
C++
1
2
freopen("input.txt", "rt", stdin);
freopen("output.txt", "wt", stdout);
нужен
0
0 / 0 / 0
Регистрация: 25.03.2013
Сообщений: 20
14.05.2013, 19:28  [ТС]
Можете мне результаты скинуть??
0
381 / 352 / 113
Регистрация: 17.05.2012
Сообщений: 1,049
14.05.2013, 19:33


Цитата Сообщение от m09 Посмотреть сообщение
Можете мне результаты скинуть??
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
14.05.2013, 19:33

Разработать блок-схему и программу для решения задачи с использованием типа структура
Разработать блок-схему и программу для решения задачи с использованием типа структура. 1. Даны сведения о студентах группы: ФИО...

Разработать программу для решения задачи из нижеприведенных положений теории чисел
Лабораторная работа №6 Разработать программу для решения задачи из нижеприведенных положений теории чисел: 1. Функция Эйлера; ...

Напишите программу для решения предложенной задачи с использованием пользовательских функций
1) Составить текст 2) Описать реализованый в программе алгоритм свесно-формульно и спомощью блок схем 3) Привести все вывод...

Разработать алгоритм решения задачи
Прошу помогите уже 3 час сижу никак не могу сделать алгоритм для 5 варианта вроде всё просто, но компилятор постоянно ругается, только...

Составить универсальную программу для решения математической задачи используя разветвляющий алгоритм
Задание: составить универсальную программу для решения математической задачи используя разветвляющий алгоритм. Подобрать самостоятельно три...


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

Или воспользуйтесь поиском по форуму:
30
Ответ Создать тему
Новые блоги и статьи
Запрет дублирования строк в табличной части
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, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru