BashProcker
14.12.2020 23:39

На языке си. последовательно вводятся целые положительные числа. для каждого числа выяснить, является ли оно факториалом какого либо числа. если да, то вывести число, факториалом которого является введённое, если нет, то вывести сообщение об этом. признаком конца ввода является ввод нуля.
.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
alensolowiewa
17.04.2022 22:34

Объяснение:

program sortmas;

{$mode objfpc}{$H+}

uses

 {$IFDEF UNIX}{$IFDEF UseCThreads}

 cthreads,

 {$ENDIF}{$ENDIF}

 Classes

 { you can add units after this };

const z=28;

type mas=array[1..z] of integer;

var

 u, u1,u2, mas1:mas;

 buf:integer;

procedure ch1(n:integer);

var i,j,k:integer;

begin

j:=0;k:=0;

for i:=1 to n do

u[i]:= random(21)+20; //u[i]:= random(20,40); для PascalABC

for i:=1 to n do

begin

if  i mod 2=0 then

begin

 j:=j+1;u2[j]:=u[i];

end

else

begin k:=k+1;u1[k]:=u[i];end ;

end;

end;

//сортировка по возрастанию

// в mas1 отсортированный массив

procedure vozr1(a:mas;m:integer);

var i,k:integer;

begin

for k:=1 to m do

for i:=k to m do

   begin

   if a[k]>=a[i] then

    begin

     buf:=a[k];

     a[k]:=a[i];

     a[i]:=buf;

    end ;

   end;

mas1:=a;

 end;

//сортировка по убыванию

// в mas1 отсортированный массив

procedure ubyv1(a:mas;m:integer);

var i,k:integer;

begin

for k:=1 to m do

for i:=k to m do

   begin

   if a[k]<=a[i] then

    begin

     buf:=a[k];

     a[k]:=a[i];

     a[i]:=buf;

    end ;

   end;

mas1:=a;

end;

// Вывод массива на экран

// b -массив n-размер,text - что хотим написать

procedure showmas(b:mas;n:integer;text:string);

var

 i:integer;

begin

writeln(text);

for i:=1 to n  do

write(b[i],' ');

readln;

end;

begin

 ch1(28);

 showmas(u,28,'Исходный массив u');

 showmas(u1,14,'Массив с нечетными номерами ');

 showmas(u2,14,'Массив с четными номерами');

 vozr1(u1,14);

 u1:=mas1;

 showmas(u1,14,'Массив с нечетными номерами отсортированный по возрастанию');

 ubyv1(u2,14);

 u2:=mas1;

 showmas(u2,14,'Массив с четными номерами отсортированный по убыванию');

end.

0,0(0 оценок)
Ответ:
raizat2004
15.10.2020 09:59

#include <stdio.h>

#include <stdlib.h>

#include <time.h>

int main(){

   int arr[10],even[10], cur = 0, tmp;

   srand(time(0));

   puts("Source array:");

   for (int i = 0; i < 10; i++){   //генерация массива +

       arr[i] = rand() % 30;   //отбор четных элементов

       printf("%d\n", arr[i]);

       if (arr[i] % 2 == 0){

           even[cur] = arr[i];

           cur++;

       }

   }

   for (int i = 0; i < cur; i++)   //сортировка пузырьком по убыванию

       for(int j = 0; j < cur - i - 1; j++)

           if (even[j+1] > even [j]){

               tmp = even[j+1];

               even[j+1] = even[j];

               even[j] = tmp;

           }

   puts("Sorted array:");  //печать сортированного массива

   for (int i = 0; i < cur; i++)

       printf("%d\n", even[i]);

   return 0;

}

Объяснение:

Компилятор gcc 8.2.0

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота