Используя контейнеры и алгоритмы стандартной библиотеки шаблонов, решить
следующие задачи (использовать только алгоритмы стандартной библиотеки шаблонов):
Дан текст, состоящий из предложений, разделённых знаками препинания из набора «.?!». Предложения в свою очередь состоят из слов, отделенных друг от друга пробелами. Найти слова (без учёта регистра) и их количество, которые встречаются одновременно и в повествовательных, и в восклицательных предложениях.
Текст вводится с клавиатуры!
На C++.
Если есть офис, то можете запустить программу.
Код увидеть Alt+F11
Sub massiv()
строка = 3 'не обязательно,номер строки для начала вывода на лист
n = Cells(2, 3) 'не обязательно, вводим количество чисел
Dim B(10000) As Integer 'резервируем память на 10000 целых чисел
S = 0 'обнуляем сумму
For i = 1 To n 'Начало цикла
k = Rnd(1) 'Генерируем случайное число в диапазоне (0;1)
k = k * 9 + 12 'Смещаем его в диапазон [12;20]
k = Int(k) 'обрезаем, оставляя целое
B(i) = k 'заполняем массив
S = S + k 'считаем сумму
Cells(строка, 3) = строка - 2 'не обязательно, вывод номера значеня
Cells(строка, 4) = k 'Не обязательно вывод значения
строка = строка + 1 'не обязательно, увеличить строку для вывода
Next i 'Конец цикла
Cells(строка, 3) = "сумма =" 'не обязательно, выводим надпись
Cells(строка, 4) = S 'не обязательно, выводим сумму
End Sub
Программа вывводит дату следующего дня. Чтоб не утяжелять программу, не стал писать проверку правильности введения даты - то есть пользователь должен вводить только правильные цифры :)
Program Upmixer;
var
day, month, year:integer;
begin
writeln('Введите дату:');
write('День:'); read (day);
write('Месяц:'); read (month);
write('Год:'); read (year);
day:=day+1;
{если было введено 29 февраля високосного года}
if (((year mod 4)=0) and ((year mod 100)<>0) and (month=2) and (day=30)) then
begin
day:=1;
month:=month+1;
end;
{если было введено 28 февраля невисокосного года}
if (((year mod 4)<>0) and (month=2) and (day=29)) then
begin
day:=1;
month:=month+1;
end;
{другие дни}
if ((day=31) and ((month=4) or(month=6) or (month=9) or (month=11))) then
begin
day:=1;
month:=month+1;
end;
if ((day=32) and ((month=1) or(month=3) or (month=5) or (month=7) or (month=8) or (month=10))) then
begin
day:=1;
month:=month+1;
end;
{31 декабря}
if ((day=32) and (month=12)) then
begin
day:=1;
month:=1;
year:=year+1;
end;
writeln('Завтра ', day,' ',month,' ',year);
end.