vapebroshop
?>

Задать случайный массив на интервале [-2; 8].найти количество положительных чисел .нужна программа на pascalabc

Информатика

Ответы

rimmaskis

const nn=10; var a: array [1..nn] of integer; i,k: integer; begin  randomize;   k: =0;   for i: = 1 to nn do   begin      a[i]: =random(10)-2;       write (a[i],' ');   end;   for i: = 1 to nn do if (a[i]> 0) then k: =k+1;   writeln;   writeln(k); end.

m-zolotukhina2

ответ:

основным отличием вычислительной машины от таких счетных устройств, как счеты, арифмометр, калькулятор, заключается в том, что вся последовательность команд на вычисление предварительно записывается в память вычислительной машины и выполняется последовательно автоматически.   машина состояла из памяти, арифметико-логического устройства (алу), устройства ввода-вывода и устройства

1) устройство ввода передавало команды и данные в алу, откуда они записывались в память.

2) все команды, совокупность которых называется программой, записываются в память в соседние ячейки по возрастанию их адресов, а данные, которые требуют обработки,— в ячейки с произвольными адресами.

3) последняя команда программы – это обязательно команда остановки работы. каждая команда содержит код операции, которую необходимо выполнить, и адреса ячеек, в которых находятся данные, обрабатываемые этой командой. устройство содержит специальный регистр, который называется «счетчик команд». после загрузки программы и данных в память в счетчик команд записывается адрес первой команды программы. после чего вычислительная машина переходи, в режим автоматического выполнения программы.

4) устройство считывает из памяти содержимое ячейки памяти, адрес которой находится в счетчике команд, и помещает его в специальное устройство – «регистр команд». регистр команд хранит команду во время ее исполнения.

5) устройство расшифровывает тип операции команды, считывает из памяти данные, адреса которых указаны в команде, и приступает к ее выполнению. для каждой команды устройство имеет свой алгоритм обработки, который заключается в выработке сигналов для всех остальных устройств машины.

6) устройство читает команду, адрес которой находится в счетчике команд, помещает ее в регистр команд . этот процесс продолжается до тех пор, пока очередная исполняемая команда не оказывается командой останова исполнения программы.

7)   особым случаем можно считать команды безусловного или условного перехода. в этом случае команда перехода содержит адрес ячейки, куда требуется передать . этот адрес записывается устройством непосредственно в счетчик команд и происходит переход на соответствующую команду программы.

вот и все. если что- то надо пиши. объясню.

ogofman
// pascalabc.net 3.2, сборка 1401 от 14.03.2017 // внимание! если программа не работает, обновите версию! procedure sumkoleven(a: array[,] of integer; var s,k: integer); begin   var p: =a.rows.selectmany(x-> x).where(x-> x.iseven);   s: =p.sum; k: =p.count end; procedure maxcoord(a: array[,] of integer; var imax,jmax: integer); begin   (imax,jmax): =(0,0);   for var i: =0 to a.rowcount-1 do       for var j: =0 to a.colcount-1 do           if a[i,j]> a[imax,jmax] then (imax,jmax): =(i,j) end; procedure zeroeven(a: array[,] of integer); begin   for var i: =0 to a.rowcount-1 do       for var j: =0 to a.colcount-1 do           if a[i,j].iseven then a[i,j]: =0 end; procedure maxsumrow(a: array[,] of integer; var irow: integer); begin   irow: =a.rows.select(x-> x.sum).toarray.indexmax; end; begin   var n: =readinteger('количество строк в массиве: ');   var m: =readinteger('количество столбцов в массиве: ');   writeln('*** исходный массив [',n,',',m,'] ***');   var a: =matrrandom(n,m,-99,99);   a.println(4); writeln(4*a.colcount*'-');   var sum,kol: integer;   sumkoleven(a,sum,kol); writeln('s=',sum,', k=',kol);   var im,jm: integer;   maxcoord(a,im,jm); writeln('координаты максимума [',im+1,',',jm+1,']');   var b: =copy(a);   zeroeven(b);   b.println(4); writeln(4*b.colcount*'-');   maxsumrow(a,im); writeln('максимальная сумма у строки ',im+1) end. пример количество строк в массиве: 5 количество столбцов в массиве: 8 *** исходный массив [5,8] ***   23  94  26  40 -88 -29  88 -46   -98  64 -78  93  17  36  66  56   -52 -16  -7 -33 -63 -95  40  96   10 -30  79 -75 -47  83  30 -70   -37 -50 -80  18  -7 -43  68 -68 s=56, k=25 координаты максимума [3,8]   23    0    0    0    0 -29    0    0     0    0    0  93  17    0    0    0     0    0  -7 -33 -63 -95    0    0     0    0  79 -75 -47  83    0    0   -37    0    0    0  -7 -43    0    0 максимальная сумма у строки 2

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

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

Задать случайный массив на интервале [-2; 8].найти количество положительных чисел .нужна программа на pascalabc
Ваше имя (никнейм)*
Email*
Комментарий*

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

borodin
Владислава531
Natella-874535
filternovo
vettime625
Манько_Панферов
Marina281
Janaz842060
yuda12
Kondratchik Vladimir
Pervosha
samoilovcoc
petr2077
nat63nesnova5
Sergei Gaishun