Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

В массиве Z[1..N] определить сумму нечетных чисел от последнего нулевого значения до Z[N] и среднее арифм. четных до последнего нуля.

B матрице A[1..N,1..M] упорядочить элементы столбца. содержащего наибольшее количество отрицательных чисел, по убыванию. | В массиве C[1..N] все элементы, больше среднего арифметического положительных чисел, заменить на первое положительное значение массива. | Подсчитать количество предложений. Расставить предложения по возрастанию количества слов в каждом | Определить среднее арифметическое четных элементов, лежащих после максимального значения в массиве D[I..N]. Все нечетные рассортировать по возрастанию. | Создать массив М[ 1 ..N]. Определить минимальное значение среди первых N DIV 2 чисел. Максимальное всего массива заменить в массиве на это минимальное значение. | В массиве A[1..15] определить минимальное значение. Все числа, лежащие за минимальным записать в новый массив В и определить в нем среднее арифметическое положительных чисел. | Определить средн. арифм. положительных чисел, лежащих после минимального значения в массиве B[1..N]. Числа до минимального рассортировать по возрастанию. | В матрице D[1..N.1..M] максимальный элемент заменить средним арифметическим элементов строки в которой находится максимальный элемент. |


Читайте также:
  1. B матрице A[1..N,1..M] упорядочить элементы столбца. содержащего наибольшее количество отрицательных чисел, по убыванию.
  2. Frac14; финала Лиги КВН «Среднее Поволжье» г. Тольятти
  3. I. Нумерация чисел от 11 до 20.
  4. II. Критерии для назначения повышенной стипендии
  5. а основании потерь мощности можно определить потери электроэнергии.
  6. азовите два числа, у которых количество цифр равно количеству букв, составляющих название каждого из этих чисел.
  7. азовите два числа, у которых количество цифр равно количеству букв, составляющих название каждого из этих чисел.(сто (100) и миллион (1000000))

 

{$l zero.obj}

Program massiv; {}

uses {}

crt; {для стирания}

const {}

n1 = 10; {количество элементов}

type {}

mas = array [1..n1] of integer; {массивы}

var {}

x: mas; {х массив}

a,s,i,n,temp1,e,d: integer; {доп переменные}

procedure zero(x:mas; d,temp1,e,s,a,n:integer); external;

begin {}

clrscr; {стираем}

randomize; {случайно}

for i:=1 to n1 do begin

x[i]:=random(2*n1); x[6]:=0;

write(x[i]:4);

end;

d:=0;

n:=n1;

writeln;

 

zero(x,d,temp1,e,s,a,n);

writeln;

for i:=1 to n1 do write(x[i]:4);

writeln;

writeln(s);

writeln(a);

repeat until keypressed;

end.

 

 

extrn x,d,temp1,e,s,a,n

public zero

code segment byte public

assume cs:code

zero proc near

 

lea si,x

mov bp,n

mov cx,0

@met1: mov ax,[si]

add si,2

cmp ax,0

jne @met2

mov temp1,si

@met2: dec bp

cmp bp,0

jne @met1

lea si,x

@met11: inc d

mov ax,[si]

add si,2

cmp temp1,si

je @m3

shr ax,1

jnc @met11

add cx,[si-2]

mov s,cx

cmp temp1,si

je @m3

jmp @met11

mov cx,0

@m3: mov cx,0

inc d

mov ax,[si]

add si,2

shr ax,1

jc @m3

inc e

mov cx,[si-2]

add a,cx

mov bp,n

cmp d,bp

jle @m3

sub a,cx

mov ax,a

cwd

dec e

idiv e

mov a,ax

 

ret

zero endp

code ends

end

 

Дан массив целых чисел К(1..25). Отсортировать по возрастанию только числа меньшие порога, введенного заранее. Сортировку производить в массиве К. Числа большие порога, должны оставаться на своих местах.

 

 

{$l lab2.obj}

uses crt;

const n=20;

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

var d:mas;

i,porog,k:integer;

procedure lab2(var d:mas; var porog,k:integer);external;

begin

clrscr;

writeln('Исходный массив');

randomize;

for i:=1 to n do begin

d[i]:=-50+random(100);

write(d[i],' ');

end;

writeln;

writeln('Введи пороговое значение');

readln(porog);

k:=n;

lab2(d,porog,k);

writeln('Отсортированный массив');

for i:=1 to n do

write(d[i],' ');

end.

 

 

extrn d,porog,k; внешние параметры

public lab2; имя процедуры, доступной извне

code segment byte public; объявление сегмента кода

assume cs:code; связывание сегмента с сегментным регистром

lab2 proc near; процедура (ближний вызов)

LEA BX,D; загружаем адрес массива

mov ax,k; размерность массива (число элементов)

sub ax,1; умножаем на 2 - так как integer

MOV CX,ax; счетчик циклов

@1: PUSH CX

MOV AX,[BX]

CMP AX,POROG

JGE @4

MOV SI,BX

MOV AX,[SI]

MOV DI,SI

@2: ADD SI,2

CMP AX,[SI]

JLE @3

MOV AX,[SI]

MOV DI,SI

@3: LOOP @2

XCHG AX,[BX]

XCHG AX,[DI]

@4: ADD BX,2

POP CX

LOOP @1

ret

lab2 endp

code ends

end

 

 


Дата добавления: 2015-08-02; просмотров: 128 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Определить, сколько нулей лежит между минимальным и максимальным значениями массива H[1..N]. До и после экстремумов массив отсортировать по убыванию.| Дан массив из 40 символов, содержащий слова, разделенные одним пробелом. Определить, сколько раз каждое слово встречается в этом массиве.

mybiblioteka.su - 2015-2024 год. (0.005 сек.)