0 / 0 / 0
Регистрация: 12.10.2011
Сообщений: 19
1

Массив с новыми элементами

23.11.2011, 20:45. Показов 1070. Ответов 1
Метки нет (Все метки)

Добрый вечер.
Не получается написать программу которая коректно вычисляет элементы массива.Выводит число 0 и не получается переслать элементы из исходного массива а в массив b.Подскажите каким образом можно решить это задание.
Задание:
Составить программу, которая по заданному массиву a[20] создает новый массив b[20], каждый элемент которого формируется так: b[0]=a[0];b[1]=a[0]+a[1];b[2]=a[0]+a[1]+a[2] и т.д.
Вот что вышло:
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
.model small
.stack
.data
 
mas Dw 1,2,3,4,5,6,7,8,9,1,2,3,4,5,6,7,8,9,1,2
mas2 Dw 20 dup (0)
Len dw 20
 
.code
extrn writer:near
.startup
CycleExt:
        
        mov si, 0
CycleIn:
        mov ax, Mas[si]  
    mov ax,[si]
    mov mas2[di],ax
    add di,2
    inc si
    n:add si,2
    dec Len
    jnz loop1
    loop1:
    mov ax,mas[si]
    add ax,mas[si+2]
    mov mas2[di+2],ax
 
        mov ax, mas2[si]
        call Writer    
        add si, 2
        
        
        mov Ah, 1
        int 21H
 
.exit
end
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.11.2011, 20:45
Ответы с готовыми решениями:

Заполнить массив 3 элементами из массивов 1 и 2 по возрастанию
Программа заполняет массив 3, элементами из массива 1 и 2 по возрастанию, но где-то ошибка не могу...

Ввести массив, найти разницу между наибольшим и последним элементами массива
Ввести массив, найти разницу между наибольшим и последним элементами массива. Может кто-нибудь...

Сформировать новый массив, элементами которого будут суммы одноименных элементов двух массивов [tasm]
Надо решить задачу Задать с клавиатуры два массива из 10 элементов каждый. Сформировать новый...

Как сделать "новую страницу" с новыми элементами по нажатию кнопки?
Как добавить страницу, чтоли, новую, где можно будет другие элементы размещать. Приложение для...

1
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
31193 / 20390 / 7941
Регистрация: 22.10.2011
Сообщений: 35,364
Записей в блоге: 6
24.11.2011, 00:38 2
Лучший ответ Сообщение было отмечено volvo как решение

Решение

А если вот так:
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
.startup
    
    mov cx, 20
    mov di, 0   ; B
CycleExt:
    xor ax, ax
    mov si, di  ; A
CycleIn:
    add ax, Mas[si]
    or si, si
    jz get_out
    sub si, 2
    jmp CycleIn
    
get_out:
    mov Mas2[di], ax
        call Writer ; Печатаем AX
        add di, 2
    loop CycleExt       
        
        mov Ah, 1
        int 21H
 
.exit
? Хотя можно и еще проще: b[ i ] = b[i - 1] + a[i], можно обойтись одним циклом...
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.11.2011, 00:38

Пополнить массив, переданный в метод, новыми значениями, и отправить обратно
Народ, помогите!! Уже всю голову сломал. Если коротко, то нужно полнить массив, переданный в этот...

Массив: создать одномерный массив, элементами которого являются двумерные массивы, элементами которых являются записи
создать одномерный массив, элементами которого являются двумерные массивы, элементами которых...

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

Дан массив А[М] — массив чисел. Получить массив С, элементами которого будут модули сумм рядом стоящих чисел
Реализовать в виде модуля набор подпрограмм для выполне¬ния сле-дующих операций над целыми числами:...


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

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

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