Вопрос задан 19.06.2023 в 07:21. Предмет Информатика. Спрашивает Журов Саша.

Напишите, пожалуйста, программу на Си или Паскале, срочно Проверить, что все цифры от 0 до 9

встречаются в десятичной записи числа х одно и то же кол-во раз.
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Чистякова Настя.

Ответ:

(см. объяснение)

Объяснение:

Проверим все ли цифры в числе встречаются одинаковое количество раз.

Самый короткий код:

##

var a: array ['0'..'9'] of integer; var f: boolean := true; var s: string := ReadString;

if(s.StartsWith('-')) then s:= s[2:];

s.ForEach(procedure(x)->a[x]+=1);

a.ForEach(procedure(x)->if((x<>a.Max) and (x<>0)) then f:=false);

print(if(f) then 'Yes' else 'No');

Тестирование:

  • Тест 1:
  • 1234
  • Yes
  • Тест 2:
  • 11234
  • No
  • Тест 3:
  • -14927
  • Yes
  • Тест 4:
  • -1029
  • Yes
  • Тест 5:
  • 1792673264172486742764123764976432176924769274794823792413927391439764792374769127439768521677614279132742767142347222222222222222222222222222289327921436843132612694236278413842
  • No
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Программа на языке Си, которая проверяет, что все цифры от 0 до 9 встречаются в десятичной записи числа х одно и то же количество раз:

```c #include #include

int main() { int digits_count[10] = {0}; int x;

printf("Введите число x: "); scanf("%d", &x);

// Преобразуем число в строку char str[20]; sprintf(str, "%d", x);

// Подсчитываем количество каждой цифры int len = strlen(str); for (int i = 0; i < len; i++) { digits_count[str[i] - '0']++; }

// Проверяем, что количество каждой цифры одинаковое int same_count = 0; for (int i = 0; i < 10; i++) { if (digits_count[i] > 0) { if (same_count == 0) { same_count = digits_count[i]; } else if (same_count != digits_count[i]) { printf("Некорректное количество цифр\n"); return 0; } } }

printf("Количество каждой цифры равно %d\n", same_count);

return 0; } ```

Пользователю будет предложено ввести число x, после чего программа преобразует его в строку и подсчитывает количество каждой цифры. Затем она проверяет, что количество каждой цифры одинаковое, и выводит соответствующее сообщение. Если количество цифр различается, выводится сообщение "Некорректное количество цифр". В противном случае выводится количество повторений каждой цифры.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос