В этой программе ищется число с наибольшим количеством четных цифр и если таких чисел несколько, то выводится на экран первое по порядку, насчет второго задания (Найти два наименьших числа последовательности), там несколько непонятных вопросов, поэтому я не знаю как его правильно сделать.
Код программы:
#include <iostream>
using namespace std;
int main()
{
int *mas, n, a, b, max = 0, temp = 0, index;
cout<<"Введите количество элементов в массиве"<<endl;
cin >> n;
mas = new int(n);
cout<<"Введите массив:"<<endl;
for (int i = 0; i < n; i++)
cin >> mas[i];
cout<<"\nВаш массив:"<<endl;
for (int i = 0; i < n; i++)
cout<<mas[i]<<' ';
for (int i = 0; i < n; i++){
b = mas[i];
while(b){
a = b % 10;
if (a % 2 == 0)
++temp;
b = b / 10;
}
if (temp > max){
index = i;
max = temp;
}
temp = 0;
}
if (max)
cout<<"\n\nЧисло с наибольшим количеством четных цифр: "<<mas[index]<<endl;
else
cout<<"\n\nЧисел с четными цифрами не найдено"<<endl;
--- Python 3.8.3 ---
import typing
from typing import Callable
from typing import Any
Primitive = typing.TypeVar('Primitive', int, float, complex, str, bytes, bytearray)
def ReadSeqWhile(predicate: Callable[[Any], bool], SeqType: Primitive = int):
'''
Возвращает последовательность элементов в указанном типе, считываемых с клавиатуры, пока ввод удовлетворяет условию
'''
temp = SeqType(input())
while predicate(temp):
yield temp
temp = SeqType(input())
def main():
InputData = ReadSeqWhile(lambda p: p != '', SeqType = str)
for _ in InputData:
print('text')
if __name__ == "__main__":
main()
В этой программе ищется число с наибольшим количеством четных цифр и если таких чисел несколько, то выводится на экран первое по порядку, насчет второго задания (Найти два наименьших числа последовательности), там несколько непонятных вопросов, поэтому я не знаю как его правильно сделать.
Код программы:
#include <iostream>
using namespace std;
int main()
{
int *mas, n, a, b, max = 0, temp = 0, index;
cout<<"Введите количество элементов в массиве"<<endl;
cin >> n;
mas = new int(n);
cout<<"Введите массив:"<<endl;
for (int i = 0; i < n; i++)
cin >> mas[i];
cout<<"\nВаш массив:"<<endl;
for (int i = 0; i < n; i++)
cout<<mas[i]<<' ';
for (int i = 0; i < n; i++){
b = mas[i];
while(b){
a = b % 10;
if (a % 2 == 0)
++temp;
b = b / 10;
}
if (temp > max){
index = i;
max = temp;
}
temp = 0;
}
if (max)
cout<<"\n\nЧисло с наибольшим количеством четных цифр: "<<mas[index]<<endl;
else
cout<<"\n\nЧисел с четными цифрами не найдено"<<endl;
delete[] mas;
return 0;
}