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

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

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


Читайте также:
  1. A) Предназначенные для уборки номера распределяются между горничными только начальником вспомогательной службы.
  2. B матрице A[1..N,1..M] упорядочить элементы столбца. содержащего наибольшее количество отрицательных чисел, по убыванию.
  3. II. РАЗЛИЧИЕ МЕЖДУ ПРОСЛАВЛЕНИЕМ И ПОКЛОНЕНИЕМ
  4. IV Международная студенческая научно-практическая конференция
  5. Quot;Конвенция о договоре международной дорожной перевозки грузов" Женева 19.05.1956
  6. Quot;Кто Мне служит, Мне да последует; и где Я, там и слуга Мой будет. И кто Мне служит, того почтит Отец Мой". - (Иоанна 12:26).
  7. quot;После пика популярности очень скоро наступает пресыщение". 1 страница

 

{$L l08.obj}

uses crt;

const

N = 15;

type

row = array[1..N] of integer;

var

h: row;

i, k: integer;

procedure count6 (var a: row; var zcnt: integer; razm: integer); external;

begin

clrscr;

writeln;

writeln;

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

randomize;

for i:=1 to N do begin

h[i]:= -5 + random(10);

write(' ',h[i]);

end;

count6(h,k,N);

writeln;

writeln('Кол-во нулей между max и min: ',k);

write(' Результат:');

for i:= 1 to N do write(' ',h[i]);

readkey;

end.

 

public count6

code segment byte public

assume cs: code

 

.286

count6 proc near

push bp

mov bp,sp

pusha

lds si,[bp+10]; адрес массива

mov cx,[bp+4]; размер массива

mov ax,[si]; принимаем первый элемент за максимум

mov di,si; сохраняем его адрес

; поиск максимума

cycl: cmp ax,[si]; сравниваем максимум с текущим

jge next; если текущий меньше, переходим к следующему

mov ax,[si]; сохраняем максимальный элемент

mov di,si; и его адрес

next: add si,2; продвигаем адрес

loop cycl

; поиск минимума

lds si,[bp+10]

mov cx,[bp+4]

mov ax,[si]

mov bx,si; будем хранить его адрес в bx

cycl2: cmp ax,[si]

jle next2

mov ax,[si]

mov bx,si

next2: add si,2

loop cycl2

xor dx,dx

cmp bx,di; определим, max или min встречается раньше

jle fmin

mov ax,di; меняем адреса местами

mov di,bx

mov bx,ax

fmin: mov cx,di; определим кол-во эл-тов между max и min

sub cx,bx

shr cx,1

dec cx

test cx,cx; проверка на то, что max и min лежат рядом

jz zero; если да, нули считать нет смысла

mov si,bx

add si,2

cycl3: cmp word ptr [si],0; проверка на 0

jnz next3

inc dx; считаем нули

next3: add si,2

loop cycl3

zero: lds si,[bp+6]

mov [si],dx; записываем количество нулей

; займемся сортировкой

lds si,[bp+10]

mov cx,bx

sub cx,si

shr cx,1

sub cx,1

mov bx,cx

cmp cx,0; защитимся от случая, когда нечего сортировать

jle done1

cycl4: push cx

mov cx,bx

lds si,[bp+10]

cycl5: mov ax,[si]

cmp ax,[si+2]

jge next5

mov dx,[si+2]

mov [si+2],ax

mov [si],dx

next5: add si,2

loop cycl5

pop cx

loop cycl4

done1:; далее сортируем конец массива

lds si,[bp+10]

mov ax,di

sub ax,si

shr ax,1

mov cx,[bp+4]

sub cx,ax

sub cx,2

mov bx,cx

cmp cx,0; защитимся от случая, когда сортировка не нужна

jle exit

add di,2

cycl6: push cx

mov cx,bx

mov si,di

cycl7: mov ax,[si]

cmp ax,[si+2]

jge next7

mov dx,[si+2]

mov [si+2],ax

mov [si],dx

next7: add si,2

loop cycl7

pop cx

loop cycl6

exit:

popa

pop bp

ret 10

count6 endp

code ends

end

 


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


<== предыдущая страница | следующая страница ==>
Создать массив М[ 1 ..N]. Определить минимальное значение среди первых N DIV 2 чисел. Максимальное всего массива заменить в массиве на это минимальное значение.| В массиве Z[1..N] определить сумму нечетных чисел от последнего нулевого значения до Z[N] и среднее арифм. четных до последнего нуля.

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