Информатика, вопрос задал fedorovica459 , 2 месяца назад

Задание. Дано натуральное число n (запросить с клавиатуры), определить количество четных
цифр в нем, сколько раз встречается первая цифра и произведение цифр больших 7.
Написать краткую спецификацию, составить блок-схему процесса и написать
программный код решения этой задачи. ( Если что программа должна быть выполнена в Intelij idea, язык Java ).

Ответы на вопрос

Ответил ulugbekbarakaev750
0

- Ввести натуральное число n с клавиатуры

- Инициализировать переменные для подсчета четных цифр, повторений первой цифры и произведения цифр больше 7

- Пока n не равно 0, повторять следующие шаги:

- Получить последнюю цифру n

- Если цифра четная, увеличить счетчик четных цифр на 1

- Если цифра равна первой цифре n, увеличить счетчик повторений на 1

- Если цифра больше 7, умножить произведение на эту цифру

- Убрать последнюю цифру из n

- Вывести на экран значения счетчиков и произведения

Вот блок-схема процесса решения задачи:

```flowchart

st=>start: Начало

e=>end: Конец

io1=>inputoutput: Ввести n

op1=>operation: count = 0 // счетчик четных цифр

op2=>operation: first = n % 10 // первая цифра n

op3=>operation: repeat = 0 // счетчик повторений

op4=>operation: product = 1 // произведение

op5=>operation: digit = n % 10 // последняя цифра n

cond1=>condition: n == 0?

cond2=>condition: digit % 2 == 0?

cond3=>condition: digit == first?

cond4=>condition: digit > 7?

io2=>inputoutput: Вывести count, repeat, product

st->io1->op1->op2->op3->op4->cond1

cond1(yes)->io2->e

cond1(no)->op5->cond2

cond2(yes)->op1(right)->cond3

cond2(no)->cond3

cond3(yes)->op3(right)->cond4

cond3(no)->cond4

cond4(yes)->op4(right)->op5

cond4(no)->op5

op5->cond1

```

Вот программный код решения задачи на Java:

```java

import java.util.Scanner;

public class Program {

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in); // создаем объект для ввода данных

System.out.print("Введите натуральное число: "); // выводим приглашение для ввода

int n = scanner.nextInt(); // считываем число с клавиатуры

int count = 0; // счетчик четных цифр

int first = n % 10; // первая цифра n

int repeat = 0; // счетчик повторений

int product = 1; // произведение

while (n != 0) { // пока n не равно 0

int digit = n % 10; // получаем последнюю цифру n

if (digit % 2 == 0) { // если цифра четная

count++; // увеличиваем счетчик четных цифр на 1

}

if (digit == first) { // если цифра равна первой цифре n

repeat++; // увеличиваем счетчик повторений на 1

}

if (digit > 7) { // если цифра больше 7

product *= digit; // умножаем произведение на эту цифру

}

n /= 10; // убираем последнюю цифру из n

}

System.out.println("Количество четных цифр: " + count); // выводим результаты

System.out.println("Количество повторений первой цифры: " + repeat);

System.out.println("Произведение цифр больших 7: " + product);

}

}

```

Новые вопросы