ren7869
?>

Напишите программу, которая в последовательности целых чисел находит среднее арифметическое чисел, кратных 9, или сообщает, что таких чисел нет. программа получает на вход целые числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 – признак окончания ввода, не является членом последовательности количество чисел не превышает 100. введённые числа по модулю не превышают 300. программа должна вывести среднее арифметическое чисел, кратных 9, или вывести no, если таких чисел в последовательности нет.

Информатика

Ответы

TOKAREVA Stepan

var  a, i, count, s: integer; begin  repeat    if(i = 100) then break;     readln(a);     if(abs(a) > 300) then begin      writeln('число по модулю не может быть > 300.');       continue    end    else if(a mod 9 = 0) and (a < > 0) then begin      inc(count);       s : = s + a;     end;     if(a < > 0) then inc(i);   until(a = 0);   writeln('среднее арифметическое: ', s / count); end.

abcd138191

#include<iostream>

#include<ctime>

#include<iomanip>

using namespace std;

void FillArray(int*& arr, int size)

{

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

{

 arr[i] = rand() % 100;

}

}

void ShowArray(int*& arr, int size)

{

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

{

 cout << arr[i] << "  ";

}

cout << endl << endl;

}

bool CheckArray(int*& arr, int size, int& sum, int& k, int& ki)

{

bool incSeq = 1;

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

{

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

 {

  sum += arr[i];

  ki++;

 }

 if (arr[i] > 0)

 {

  k++;

 }

}

for (int i = 1; i < size; i += 2)

{

 if (arr[i] > arr[i + 2])

 {

  incSeq = 0;

  break;

 }

}

return incSeq;

}

int main()

{

srand(time(0));

setlocale(LC_ALL, "ru");

int sum = 0;

int k = 0;

int ki = 0;

int size = 0;

cout << "Укажите размер массива - ";

cin >> size;

int* arr = new int[size];

FillArray(arr, size);

ShowArray(arr, size);

CheckArray(arr, size, sum, k, ki);

if (CheckArray)

{

 cout << "\n\nСредне арифметическое равно  " << fixed << setw(6) << setprecision(2) << (double)(sum / ki);

}

else

{

 cout << "\n\nКол-во чет. эл-ов\n\n - " << k;

}

delete[]arr;

}

Объяснение:

metrikajulia
Апереведём в двоичную авс,1а_16=1010 1011 1100, 0001 1010_2 каждая цифра шестнадцати ручного представления становится четвёркой цифр в двоичном виде. теперь для перевода в восьмисотых систему будем отсекать по три бита от запятой, влево, и это будет целая часть, и потом вправо, это станет дробной частью =101 010 111 100, 000 110 100_2= справа получились только два бита, и их надо дополнить нулём =5274,064_8 б из восьмеричной переведём в двоичную 123,56_8=001 010 011, 101 110_2 переформатирование двоичное число по 4 бита в группе, при необходимости дополняя слева и справа недостающими нулями =0 0101 0011, 1011 1000_2= и заменим каждую четвёрку соответствующей шестнадцати яичной цифрой = 53,в8_16

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Напишите программу, которая в последовательности целых чисел находит среднее арифметическое чисел, кратных 9, или сообщает, что таких чисел нет. программа получает на вход целые числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 – признак окончания ввода, не является членом последовательности количество чисел не превышает 100. введённые числа по модулю не превышают 300. программа должна вывести среднее арифметическое чисел, кратных 9, или вывести no, если таких чисел в последовательности нет.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Lapushkina
kabinet17
ИП-Сысоев1628
annaan-dr582
Дмитрий_Владимирович1162
Микроволновые системы что это​
agaloan8
СмыковаДарья1969
cheshirsky-kot
Полковников_Милана
Бегун-Марина
Maloletkina-marina2
myhauz
galtig83
Бражинскене_Алексей
Кочугурова