Jora2001Voronov
30.05.2021 01:52

Хранение данных и программного обеспечения для работы компьютерных сетейкакой тип компьютера? ​

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
xFørŻe
27.02.2020 05:07

"...напечатает сначала 2, потом - 6" -- это значит a=2 и b=6?


про пятеричные записи ничего не понял...  :) И ИМХО к чему такие сложности? И для чего нам комп и программа? Я подправил исходную прогу чтобы она выдавала все числа подходящие по условию

var x,a,b: longint;


begin

   for var i := 999 DownTo 100 do begin

       a := 0;

       b := 1;

       x := i;

       while x>0 do begin

           if x mod 2 > 0 then a := a+1 else b := b+(x mod 5);

           x := x div 5;

       end;

       if (a = 2) and (b = 6) then writeln('x = ', i, ' a = ', a, ' b = ',b);

   end;

end.


прога проводит расчет для всх трехзначных чисел от 999 до 100

итого мы видим что максимальное подходящее число это 960

при необходимости прогу можно переделать чтобы она находила только максимальное число.

0,0(0 оценок)
Ответ:
daniilzimin9
23.10.2020 11:04
#include <stdio.h>
#include <iostream>
#include <malloc.h>
const int N = 10;
int main()
{
setlocale(LC_ALL, "RUS");
int i, j=0, n=0;
int array[N];
int *a;
puts("Исходный массив:");
for (i=0; i<N; i++) {
printf("Введите %d элемент:", i);
scanf("%d", &array[i]);
}
system("cls");
puts("Исходный массив:");
for (i=0; i<N; i++) {
printf("%d ", array[i]);
}
printf("\n");
for (i=0; i<N; i++)
if (array[i] == 0)
n++;
printf("Новый массив:\n");
a = (int *)malloc(n*sizeof(int));
for (i=0; i<N; i++)
  if (array[i] == 0) {
    a[j] = i;
    printf("%d ", a[j]);
    j++;
  }
free(a);
printf("\n");
system("pause");
return 0;
}

Тестовое решение:
Исходный массив:
5 0 3 6 0 0 2 1 0 5
Новый массив:
1 4 5 8
Для продолжения нажмите любую клавишу . . .
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота