0 / 0 / 0
Регистрация: 21.10.2012
Сообщений: 44

Pascal -> C++ (В данном тексте в словах четной длины, начинающихся с заданного символа, определить количество гласных)

04.06.2013, 01:11. Показов 1064. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
помогите пожалуйста.
(задача В данном тексте в словах четной длины, начинающихся с заданного символа, определить количество гласных.)
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Const st='.....';
Var s,s1:string;
    i,k:byte;
    ch:char;
Begin
    write('Введите строку: ');readln(s);
    write('Введите символ: ');readln(ch);
    s:=s+' ';
    While Pos(' ',s)>0 do
    Begin
      s1:=Copy(s,1,Pos(' ',s)-1);
      Delete(s,1,Pos(' ',s));
      if odd(Length(s1))and(s1[1]=ch) then
      Begin
        k:=0;
        For i:=1 to Length(s1) do
         if Pos(s1[i],st)>0 then inc(k);
        writeln('В слове ',s1,' доля согласных = ',k);
      End;
    End;
    readln;
End.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.06.2013, 01:11
Ответы с готовыми решениями:

В тексте в словах четной длины, начинающихся с заданного символа, определить количество гласных
Здравствуйте,помогите пожалуйста. Составить программу по обработки текстовой информации согласно условию. В данном тексте в словах...

Составить функцию которая определяет среднее количество символов в словах четной длины
Составить процедуру-функцию с соответствующими формальными параметрами, которая определяет среднее количество символов в словах четной...

Найти количество слов в тексте, начинающихся с символа ‘b’
Дан английский текст. Найти количество слов, начинающихся с символа ‘b’. видел на форуме подобные задания но они сильно заумно для меня...

4
 Аватар для Olivеr
415 / 411 / 95
Регистрация: 06.10.2011
Сообщений: 832
04.06.2013, 01:34
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
#include <iostream>
#include <sstream>
#include <algorithm>
using namespace std;
 
bool isVowel(char c)
{
    c = tolower(c);
    return c=='a' || c=='e' || c=='i' ||
           c=='o' || c=='u' || c=='y';
}
int main()
{
    char filterChar = 'd';
    string str, word;
    getline(cin, str);
    istringstream iss(str);
    while (iss >> word)
        if ( !(word.size() % 2) && word[0]==filterChar )
            cout << word << "\tVowels: "
                 << count_if(begin(word), end(word), isVowel);
 
    return 0;
}
1
 Аватар для ninja2
979 / 196 / 33
Регистрация: 26.09.2012
Сообщений: 2,041
04.06.2013, 03:24
А от мое элегантное решение
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
#include <iostream>
using std::cout;
using std::endl;
using std::cin;
#include <string>
using std::string;
 
int main()
{
    string s("Hellow world worobor wrodobor ga worlloyd dada");
    string s1("aeiouy");
    string s2;
    char ch='w';
    int count(0);
    cout <<"Vvedite ctroky... ";
    getline(cin,s);
    cout <<"Vvedite cimvol... ";
    cin >>ch;
    
    int pos=s.find(ch);
    
    while(pos!=string::npos)
    {
        if(s[pos-1]!=' ')
        {
            pos=s.find(ch,pos+1);
            continue;
        }
        int pos1=s.find(' ',pos);
        s2=s.substr(pos,pos1-pos);
        if(s2.length()%2==0)
        {
            cout <<"s2= "<<s2<<endl;
            int fined=s2.find_first_of(s1);
            while(fined!=string::npos)
            {
                count++;
                fined=s2.find_first_of(s1,fined+1);
            }
        }
        pos=s.find(ch,pos+1);
    }
 
    cout <<"count= "<<count<<endl;
 
    return 0;
}
1
0 / 0 / 0
Регистрация: 21.10.2012
Сообщений: 44
04.06.2013, 04:20  [ТС]
Olivеr,
ninja2, спасибо большое если не сложно можно комментарий к телу программы?
0
 Аватар для ninja2
979 / 196 / 33
Регистрация: 26.09.2012
Сообщений: 2,041
04.06.2013, 10:53
Цитата Сообщение от _ROBERT_ Посмотреть сообщение
ninja2, спасибо большое если не сложно можно комментарий к телу программы?
Да не сложно, от примерно расписал, что какая строка делает.
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
#include <iostream>
using std::cout;
using std::endl;
using std::cin;
#include <string>
using std::string;
 
int main()
{
    //создаем переменные
    string s;//("Hellow world worobor wrodobor ga worlloyd dada");
    //буквы которые нужно подсчитать
    string s1("aeiouy");
    //переменная для слов
    string s2;
    //символ для начала слов
    char ch;//='w';
    //количество элементов нужных слов
    int count(0);
    cout <<"Vvedite ctroky... ";
    getline(cin,s);//ввод строки
    cout <<"Vvedite cimvol... ";
    cin >>ch;//ввод символа
    //поиско первой позиции в строке символа
    int pos=s.find(ch);
    //пока позиция не равна string::npos
    //(string::npos-этонаверно признак конца строки)
    while(pos!=string::npos)
    {
        //позиция в средине слова
        if(s[pos-1]!=' ')
        {
            //поиск следущей позиции
            pos=s.find(ch,pos+1);
            continue;//конец итерации, переход на новую
        }
        //да это начало слова
        
        //ищем конец слова-вторая позиция
        int pos1=s.find(' ',pos);
        //в s2 записываем слово
        s2=s.substr(pos,pos1-pos);
        //если s2 четное
        if(s2.length()%2==0)
        {
            cout <<"s2= "<<s2<<endl;//вывод s2
            //находим первую позиция в s2
            //любого символа из s1
            int fined=s2.find_first_of(s1);
            //опка fined не равно признаку конца строки
            //наверно find_first_of(s1) вернет его
            //я просто подсмотрел в примере кода, так делают
            while(fined!=string::npos)
            {
                count++;//увеличиваем счетчик
                //переход к следующей позиции
                fined=s2.find_first_of(s1,fined+1);
            }
        }//конец if
        //переход к следущей позиции поиска слова
        pos=s.find(ch,pos+1);
    }//конец цикла while()
    
    //вывод результатов
    cout <<"count= "<<count<<endl;
 
    return 0;
}
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.06.2013, 10:53
Помогаю со студенческими работами здесь

Подсчитать количество слов, начинающихся с заданного символа
6)подсчитать кол-во слов начинающихся в заданном символе

Определить, каких букв — гласных или согласных — больше в данном тексте
Дан текст из цифр и строчных латинских букв, за которыми следует точка. Определить, каких букв — гласных или согласных — больше в этом...

Определить номера позиций гласных букв в данном тексте на русском языке
Помогите решить задачу в C++. Определить номера позиций гласных букв в данном тексте на русском языке.Никак не могу понять, как её сделать(

Найти количество строк в файле, начинающихся с заданного символа
Дан текстовый файл. Найти количество строк в нѐм, начинающихся с заданного символа

Строки. Определить, каких букв — гласных или согласных — больше в данном тексте
Дан текст из цифр и строчных латинских букв, за которыми следует точка. Определить, каких букв — гласных или согласных — больше в этом...


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

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

Новые блоги и статьи
Компиляция C++ с Clang API
NullReferenced 24.03.2025
Компиляторы обычно воспринимаются как черные ящики, которые превращают исходный код в исполняемые файлы. Мы запускаем компилятор командой в терминале, и вуаля — получаем бинарник. Но что если нужно. . .
Многопоточное программировани­е в C#: Класс Thread
UnmanagedCoder 24.03.2025
Когда запускается приложение на компьютере, операционная система создаёт для него процесс - виртуальное адресное пространство. В C# этот процесс изначально получает один поток выполнения — главный. . .
SwiftUI Data Flow: Передача данных между представлениями
mobDevWorks 23.03.2025
При первом знакомстве со SwiftUI кажется, что фреймворк предлагает избыточное количество механизмов для передачи данных: @State, @Binding, @StateObject, @ObservedObject, @EnvironmentObject и другие. . . .
Моки в Java: Сравниваем Mockito, EasyMock, JMockit
Javaican 23.03.2025
Как протестировать класс, который зависит от других сложных компонентов, таких как базы данных, веб-сервисы или другие классы, с которыми и так непросто работать в тестовом окружении? Для этого и. . .
Архитектурные паттерны микросервисов: ТОП-10 шаблонов
ArchitectMsa 22.03.2025
Популярность микросервисной архитектуры объясняется множеством важных преимуществ. К примеру, она позволяет командам разработчиков работать независимо друг от друга, используя различные технологии и. . .
Оптимизация рендеринга в Unity: Сортировка миллиона спрайтов
GameUnited 22.03.2025
Помните, когда наличие сотни спрайтов в игре приводило к существенному падению производительности? Время таких ограничений уходит в прошлое. Сегодня геймдев сталкивается с задачами совершенно иного. . .
Образование и практика
Igor3D 21.03.2025
Добрый день А вот каково качество/ эффективность ВУЗовского образования? Аналитическая геометрия изучается в первом семестре и считается довольно легким курсом, что вполне справедливо. Ну хорошо,. . .
Lazarus. Таблица с объединением ячеек.
Massaraksh7 21.03.2025
Понадобилась представление на экране таблицы с объединёнными ячейками. И не одной, а штук триста, и все разные. На Delphi я использовал для этих целей TStringGrid, и то, кривовато получалось. А в. . .
Async/await в Swift: Асинхронное программировани­е в iOS
mobDevWorks 20.03.2025
Асинхронное программирование долго было одной из самых сложных задач для разработчиков iOS. В течение многих лет мы сражались с замыканиями, диспетчеризацией очередей и обратными вызовами, чтобы. . .
Колмогоровская сложность: Приёмы упрощения кода
ArchitectMsa 20.03.2025
Наверное, каждый программист хотя бы раз сталкивался с кодом, который напоминает запутанный лабиринт — чем дальше в него погружаешься, тем сложнее найти выход. И когда мы говорим о сложности кода, мы. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru