Программы правда выводят не просто число, т.к. это не очень понятно получается, поэтому сначала выводится название того, что именно мы сосчитали.
Когда проверите работу программы, просто уберите текстовую часть вывода в конце, и тогда будет как в задаче- выводится только одно число.
Также, в последней программе можно сократить сообщение при отсутствии искомых чисел до просто "NO".
1) оканчивающиеся на 4 (минимальное):
цел ч,н,п,м=0
алг
нач
вывод "количество чисел в последовательности= "
ввод п
вывод "ввод последовательности натуральных чисел:", нс
нц для н от 1 до п
вывод "число ", н, " из ", п, " = "
ввод ч
если mod (ч, 10) = 4 то
если м=0 или м>ч то м := ч всё
всё
кц
вывод "минимальное число, оканчивающееся на четыре= ", м
кон
2) кратные 5 (среднее арифметическое):
цел ч,н=0,с=0,к=0
алг
нач
вывод "ввод последовательности натуральных чисел:", нс
нц
н := н+1
вывод "число №", н, " = "
ввод ч
если mod (ч, 5) = 0 и ч <> 0 то
с := с+ч
к := к+1
всё
кц при ч=0
если к=0 то
вывод "NO (нет чисел, кратных пяти)"
иначе
вывод "среднее арифметическое чисел кратных пяти= ", с/к
всё
кон
Поделитесь своими знаниями, ответьте на вопрос:
На c++ напишите программу, которая находит все различные цифры в символьной строке. формат входных данных на вход программе подаётся символьная строка. формат выходных данных программа должна вывести в одной строке все различные цифры, которые встречаются в исходной строке, в порядке возрастания. если в строке нет цифр, нужно вывести слово 'no'.
#include <bits/stdc++.h>
using namespace std;
bool a[10];
int main()
{
string s;
cin >> s;
for (int i = 0 ; i < s.length(); ++i)
if (isdigit(s[i]))
{
int ind = s[i]-'0';
a[ind] = true;
}
bool fl = false;
for (int i = 0; i < 10; ++i)
if (a[i])
{
fl = true;
cout << i << ' ';
}
if (!fl)
cout << "NO";
}