kukoleva
?>

Ввести одномерный массив a из 13 элементов. определить в нём среднее арифметическое тех элементов, которые при делении на 4 остаток 1 или 3.c++

Информатика

Ответы

Михайлович1309
#include <iostream>using namespace std;
#define n 13
int main(){ setlocale(LC_ALL, "rus"); int *a = new int[n];
printf("\n >> Введите массив из %d элементов\n << ", n); for (int i = 0; i < n; i++) scanf("%d",&a[i]);
int Sm = 0; int k = 0; for (int i = 0; i < n; i++) if ((a[i] % 4 == 1) || (a[i] % 4 == 3)) { Sm += a[i]; k++; }
if (k) printf("\n >> Sr = %g", (float)Sm / k); else printf("\n >> k = 0");
delete[] a; system("pause>>void"); return 0;}
ValerevnaRustam1072
Uses graphabc;
 const
  W = 600;
  H = 600;

 function F(x: real): real;
begin
  F := sqr(x);
end;

 var
  x0, y0, x, y, xLeft, yLeft, xRight, yRight: integer;
  a, b, fmin, fmax, x1, y1, mx, my: real;
 begin

  window.Init(0, 0, 800, 500, clwhite);
  window.IsFixedSize := true;
  xRight := 590;
  yRight := 590;
  a := -15;
  b := 6;
  fmin := -10;
  fmax := 20;
  mx := (xRight - xLeft) / (b - a);
  my := (yRight - yLeft) / (fmax - fmin);
   x0 := 380;
  y0 := 490;
  x1 := a;
   while x1 <= b do
  begin
     y1 := F(x1);
     x := x0 + round(x1 * mx);
     y := y0 - round(y1 * my);
     if (y >= 10) and (y <= 590) then SetPixel(x, y, clblack);
     x1 := x1 + 0.001 ;
  end;
end.
snopovajulia

а) Если адрессация 32-х разрядная, то число ячеек - 2^{32}.

б) Максимальный объмем адрессуемой памяти - 2^{32} = 4гб. Вспомните траблу с тем, что на 32-х разрядных ОС (которые задействуют проц в виртуальном режиме - могут использовать его как 32-х разрядный, если он даже 64-х) видимый максимальный объмем ОЗУ не больше этого предела, хоть пусть стоят плашки по 32гб.

в) Ну, если считать, что первый адрес - 0, то последний 2^{32} - 1


П.С. Число ячеек = объему памяти в байтах, так как можно адрессовать каждый байт - было сказано, что "при каждой операции... 32 бита данных", это говорит, что регистры тоже 32-х разрядные, но если вы видели какой-нибудь из языков ассемблера, то там можно обращаться к частям регистров, вплоть до размера части в 8 бит. Это на практике.


П.С.С. Сказано что проц теоретический, возможно, подразумевается, что ячейки не 1 байт, а 4 байта, т.е число ячеек в 4 раза меньше - 2^{30}. Выбирайте, что вам кажется более подходящим, препод вам известнее :)

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

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

Ввести одномерный массив a из 13 элементов. определить в нём среднее арифметическое тех элементов, которые при делении на 4 остаток 1 или 3.c++
Ваше имя (никнейм)*
Email*
Комментарий*

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

vlsvergun59
natkuv7
Марина Федорович924
aamer9992680
margusha1974
Irina Bakaev
gurina50
svetegal
xeniagolovitinskaya4546
Borisovich-Volobueva1803
kuharchuks
Виктория Нина
infosmolenskay
shilinmikhaillg
Alekseeva_Khlistov