YounMing
23.11.2022 07:23

Написать программу вычисления минимального элемента массива. ассемблер(masm32)

пример почти правильного кода:
(останавливается на сравнении ax.a[si])

.586

.model flat, stdcall

extern exitprocess@4: near

includelib c: \masm32\lib\user32.lib
includelib c: \masm32\lib\kernel32.lib

data segment

n equ 7
a dw 59,5,41,21,53,-77,43
min dw ?

data ends

text segment;
start:

mov ax,a
mov cx,n-2
mov si,2
l:
cmp ax,a[si]
jle m
mov ax,a[si]
m:
add si,2
loop l

mov min,ax

push 0

call exitprocess@4

text ends
end start

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
malyxd
16.11.2020 18:19
Program Trapez;      {название программы}    
 uses Crt;               {подключаемый модуль}

 var a, b, alfa: real;   {переменные: стороны и угол при основании трапеции}
     h, S: real;           {переменные: высота и площадь}

begin                       {начало}
 ClrScr;                    {очистка экрана}
 repeat                     {цикл ввода}
   Write (' alfa (w grad) = ');      {ввод угла}
   ReadLn(alfa);
   Write (' a = ');    ReadLn(a);  {ввод большей стороны}
   Write (' b = ');    ReadLn(b);  {ввод меньшей стороны}
 until (a>b) and (alfa<>90) ;      {контроль за вводом: надо а>b и alfa<>90}
 alfa:=alfa*pi/180;                    {перевод в радианы}
 h:=(a-b)/2*sin(alfa)/cos(alfa);    {вычисление высоты}
 S:=(a+b)*h/2;                          {вычисление площади}
 WriteLn(' S = ', S:6:2);            {вывод результата}
 ReadLn;                                {ожидание нажатия ENTER}
end.                                       {конец}
0,0(0 оценок)
Ответ:
1981katerina
25.11.2020 14:29

Небольшое наблюдение: если Денис может использовать ровно M лопастей, то он может использовать их так, чтобы четырёхлопастных спиннеров было не больше двух. (Если их три или больше, то каждые три четырёхлопастных спиннера можно поменять на 4 трёхлопастных).

Код (C++)
#include <iostream>
int main() {
    long long M;
    std::cin >> M;
    for (int f = 0; f < 3 && f * 4 <= M; f++) {
        if ((M - f * 4) % 3 == 0) {
            std::cout << (M - f * 4) / 3 << " " << f;
            return 0;
        }
    }
    std::cout << "0 0";
    return 0;
}

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота