Консультация № 91293
13.06.2007, 20:19
0.00 руб.
0 1 1
Здраствуйте. Помогите пожалуста сделать следующее: Задается кол-во элементов цепочки (больше 2). Но цепочка должна быть такая 1,1,2,3,5,8 и т.д.(т.е. каждый следующий член равен сумме двух предыдущих, а два первых эл-та всегда единицы). И нужно подсчитать сумму всех эл-ов данного ряда.
Я понимаю что задачка ерундовая, но я в этом 0. Заранее огромное спасибо.

Обсуждение

давно
Старший Модератор
31795
6196
13.06.2007, 21:01
общий
это ответ
Здравствуйте, Семин Борис Иванович!

Смотрите приложение!
Проверок в программе нет никаких.
Удачи!



Приложение:
MASM;IDEAL or MASMMODEL smallstack 50.186DATASEGinpNumb db 13,10,‘enter number >2:$‘outNumb db 13,10,‘you summa:$‘CODESEGstart: mov ax,@DATA mov ds,ax mov es,ax;начинвем ввод mov ah,9 mov dx,offset inpNumb int 21h;вводим только цифры xor cx,cxgo_inp: mov ah,07 int 21h cmp al,13 jz go_make cmp al,‘0‘ jl go_inp cmp al,‘9‘ jg go_inp;выводим push ax int 29h pop ax;формируем число xchg cx,ax mov bx,10 mul bx and cx,0fh add cx,ax jmp short go_inp;2-а первыхgo_make: mov dx,1 mov bx,1;отнимем 2-а первых sub cx,2 mov ax,dx add ax,bx;make_summa: add dx,bx add ax,dx;меняем слагаемые push dx push bx pop dx pop bx loop make_summa;начинаем вывод push ax mov ah,9 mov dx,offset outNumb int 21h pop ax;переводим число из 2-ой в 10-ую запись mov bx,10 xor cx,cxmake_numb: xor dx,dx div bx push dx inc cx or ax,ax jnz make_numb;выводим число в 10-ом видеmake_out: pop ax or al,30h int 29h loop make_out;выход в дос mov ah,4ch int 21h end start
Об авторе:
Мне безразлично, что Вы думаете о обо мне, но я рад за Вас - Вы начали думать.

Форма ответа