Форум программистов, компьютерный форум, киберфорум
Assembler для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 07.01.2011
Сообщений: 61
1

Заменить все нулевые элементы (кроме первого элемента массива) на значения предыдущего элемента

13.12.2012, 19:22. Просмотров 1018. Ответов 4
Метки нет (Все метки)

есть программа каторая делает : В массиве A [m] заменить все нулевые элементы (кроме первого элемента массива) на значения предыдущего элемента. что нужно дописать чтобы еще выводило количество 0 в введенном массиве? помогите !!!
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
Program Nomber3;
uses crt ;
var
   mas:array[0..5] of integer;
   i:byte;
   n:integer;
begin
clrscr;
n:=4;
writeln('Vvedit masiv na 5 elementiv');
for i:=0 to n do
read(mas[i]);
clrscr;
writeln('Vvedenuy masiv:');
for i:=0 to n do
write(mas[i]:5);
writeln;
readln;
asm
LEA BX,MAS
MOV SI,0010H
MOV DX,0002H
@RAP1:
    SUB  SI,2
    CMP  WORD PTR [BX][SI],0000H
    JE @RAP2
    CMP SI,DX
    JE  @RAP3
    JMP @RAP1
@RAP2:
    MOV AX,WORD PTR [BX][SI-2]
    MOV WORD    PTR    [BX][SI],AX
    CMP SI,DX
    JE  @RAP3
    JMP @RAP1
@RAP3:
end;
writeln('Peretvorenuy masiv');
for i:=0 to n do
write(mas[i]:5   );
readkey;
end.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.12.2012, 19:22
Ответы с готовыми решениями:

Из массива удалить все нулевые элементы, кроме первого нулевого элемента
Помогите сделать задание : Из массива удалить все нулевые элементы, кроме первого нулевого...

Все нулевые элементы массива заменить значением минимального элемента
В массиве найти наименьший элемент. Вывести на дисплей полученное значение. После этого изменить...

В одномерном массиве вещественных чисел заменить все нулевые элементы значением последнего элемента массива
В одномерном массиве вещественных чисел заменить все нулевые элементы значением последнего элемента...

Заменить все элементы, которые меньше последнего элемента на значение первого элемента
2) Заменить все элементы, которые меньше последнего элемента на значение первого элемента.(2задание)

4
0 / 0 / 0
Регистрация: 07.01.2011
Сообщений: 61
14.12.2012, 22:26  [ТС] 2
очень нужно )
0
Хочу в Исландию
1038 / 837 / 119
Регистрация: 10.11.2010
Сообщений: 1,631
15.12.2012, 02:31 3
Проверено на Borland C++ Builder 5.0:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
  int   mas[]={1,2,0,4,0,6};
  int   qzeros;//Number of zeros in source array
  _asm
  {
    lea edi,mas
    mov edx,0
    mov ecx,6
  mrpt:
    mov eax,[edi]
    cmp eax,0
    jne mskip
    mov [edi],ebx
    inc edx
  mskip:
    mov ebx,[edi]
    add edi,4
    loop    mrpt
    mov [qzeros],edx
  }
.
1
Клюг
7663 / 3178 / 382
Регистрация: 03.05.2011
Сообщений: 8,381
15.12.2012, 09:05 4
skaa, а если mas[0] == 0 ?
0
Хочу в Исландию
1038 / 837 / 119
Регистрация: 10.11.2010
Сообщений: 1,631
17.12.2012, 18:24 5
Тогда в mas[0] попадёт мусор . Признаю свою ошибку и прилагаю исправленный код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
  int   mas[]={1,2,0,4,0,6};
  int   qzeros;//Number of zreos in source array
  _asm
  {
    lea edi,mas
    add edi,4
    mov edx,0
    mov ecx,6
    dec ecx
  mrpt:
    mov eax,[edi]
    cmp eax,0
    jne mskip
    mov [edi],ebx
    inc edx
  mskip:
    mov ebx,[edi]
    add edi,4
    loop    mrpt
    mov [qzeros],edx
  }
.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.12.2012, 18:24

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Вывести на экран все элементы массива, которые меньше последнего элемента и больше первого элемента
Первая строка число N,(N>0) -- длина массива. Длина массива не более 100 элементов. Вторая строка N...

Выведите все элементы массива, которые больше предыдущего элемента .
Дан массив чисел. Выведите все элементы массива, которые больше предыдущего элемента .

Одномерный массив. Найти наименьший элемент, все нулевые элементы заменить значением этого элемента
Ребят,помогите,пожалуйста, с массивом,вот задание: В массиве найти наименьший элемент.Вывести на...

Одномерный массив. Найти наименьший элемент, все нулевые элементы заменить значением этого элемента
Помогите,пожалуйста. В массиве найти наименьший элемент.Вывести на дисплей полученное...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.