М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
student2544
student2544
07.08.2020 04:33 •  Информатика

Задана строка. напечатать слова строки, которые начинаются с гласной буквы и указать их количество. с++

👇
Ответ:
люба358
люба358
07.08.2020
#include <iostream>
#include <vector>
#include <boost/algorithm/string.hpp>

using namespace std;

class FindVowelWords{
    vector<string> input;  // тут будут лежать слова для обработки
    vector<string> output; // тут будут лежать обработанные слова
    vector<char> vowels;  // а тут глассные буквы

public:
    // ...
    FindVowelWords(const string& inputStr){
        vowels = {'a', 'A', 'o', 'O', 'i', 'I', 'u', 'U', 'e', 'E'}; // определяем вектор с гласнымы
        boost::split(input, inputStr, [](char c){return c == ' ';}); // разбиваем воходную строку на слова
    }

    // поиск слов, которые начинаются с гласных
    void handle(){
        for(auto const& word : input){ // проходимся по всем словам
            for(auto const& vowel : vowels){ // проходимся по всем гласным
                if(word.at(0) == vowel){
                    output.push_back(word); // если первая буква слова - гласная, то заносим слово в результирующий вектор
                }
            }
        }
    }

    // вывод результата
    void printOutput() const{
        for(auto const& item : output){
            cout << item << endl;
        }
    }
    // вывод входных данных
    void printInput(){
        for(auto const& item : input){
            cout << item << ' ';
        }
    }

    int getOutputSize(){
        return output.size();
    }

};

int main(){
    string test = "Don't be arfraid, just try to understand this code and you'll be a good programmer!";
    FindVowelWords findIt(test);
    cout << "You have entered this string: " << endl;
    findIt.printInput();
    cout << endl << endl;

    findIt.handle();
    cout << "Words that begin with a vowel: " << endl;
    findIt.printOutput();
    cout << endl;
    cout << "number of words have been found: " << findIt.getOutputSize() << endl;
    return 0;
}

Задана строка. напечатать слова строки, которые начинаются с гласной буквы и указать их количество.
4,5(95 оценок)
Открыть все ответы
Ответ:
ViktoriyaFomina1
ViktoriyaFomina1
07.08.2020

var

 a:array [1..20] of real;

 i,b,count:integer;

 p:real;

begin

 a[1]:=0.3;  a[11]:=36;

 a[2]:=5;    a[12]:=13;

 a[3]:=68;   a[13]:=15;

 a[4]:=-3;   a[14]:=28;

 a[5]:=32;   a[15]:=-0.7;

 a[6]:=-80;  a[16]:=-36;

 a[7]:=-9;   a[17]:=-0.3;

 a[8]:=-26;  a[18]:=8;

 a[9]:=-9;   a[19]:=15;

 a[10]:=40;  a[20]:=-7;

 b:=5; count:=0; p:=1;

 for i:=1 to 20 do

   begin

     write(a[i],' ');

     if  ) then

       begin

         inc(count);

         p:=p*a[i];

       end;

   end;

 writeln;

 writeln('count: ',count,'  Pr: ',p);

end.


, программисты. нужен код в паскале. и не берите из других источников. Составить блок-схему алгоритм
4,5(63 оценок)
Ответ:
SchoolZnatok
SchoolZnatok
07.08.2020

N=int(input())

a=[]

sum = 0

f = 0

c = 0

for i in range(N):

 l = int(input())

 sum = sum + l

 a.append(l)

if N == 1:

 print(1)

else:

 ans = []

 for i in range(N-1, 0, -1):

   if a[i] > a[i-1]:

     if sum > a[-1] or (sum > a[i+1] and f == 1):

       for k in range(c+1):

         ans.append(1)

       c = 0

       f = 1

     else:

       ans.append(0)

       f = 0

   elif a[i] == a[i-1]:

     c += 1

   else:

     ans.append(0)

     f = 0

   sum=sum-a[i]

 ans = ans[::-1]

 print(0)

 for i in range(c):

   print(0)

 for i in ans:

   print(i)

Объяснение:

с тебя 500 рублей у меня сегодня др

4,7(74 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ