Форум программистов, компьютерный форум, киберфорум
Наши страницы
Assembler, MASM, TASM
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.93/14: Рейтинг темы: голосов - 14, средняя оценка - 4.93
zhvaka
0 / 0 / 0
Регистрация: 29.01.2011
Сообщений: 40
1

Циклы. Количество трехзначных чисел, кратных 15, но не кратных 30.

16.04.2011, 13:29. Просмотров 2539. Ответов 3
Метки нет (Все метки)

Здравствуйте, задание состоит в следующем : "Найти количество трехзначных чисел, кратных 15, но не кратных 30. Вывести эти числа на экран."
А спросить я хочу как сделать этот цикл как ассемблерную вставку на Си ? Помогите разобраться пожалуйста.
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include<stdio.h>
#include<conio.h>
void main ()
{
int i;
int sum=0;
 
for(i=105;i<1000;i+=30)
   { 
       printf(" %d ", i);  
       sum++;
    }
printf("\n\n sum=%d", sum);  
getch();
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.04.2011, 13:29
Ответы с готовыми решениями:

Сформировать массив В из чисел массива А кратных 5
Всем привет! Нужна, Ваша помощь! Задание: Сформировать массив и напечатать...

Сформировать массив В состоящий из чисел кратных 3 и 5
Здраствуйте! помогите разобраться с массивами. Задание: Сформировать массив...

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

Дан массив из 10 байт. Посчитать количество единиц во всех разрядах, кратных трём: 3, 6, 9, …, 75, 78
Всем здрасьте. Знаю были посты на эту тему,но я сам писал задачу. У меня...

"сумма чисел кратных 5 в массиве"
помогите пожалуйста решить задачку на ассемблере для операционной системы...

3
6a6kin
231 / 101 / 6
Регистрация: 18.04.2010
Сообщений: 294
16.04.2011, 14:39 2
Слабо разбираюсь в вызовах функций, поэтому вынес вызов printf'a.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <stdio.h>
#include <conio.h>
 
void main()
{
    int i;
    int sum=0;
    __asm
    {   
        mov i, 105
    m0: 
    }
        printf(" %d ", i);
    __asm
    {
        inc sum
        add i, 30
        cmp i, 1000
    jb m0
    }
    printf("\n\n sum=%d", sum);  
    getch();
}
1
zhvaka
0 / 0 / 0
Регистрация: 29.01.2011
Сообщений: 40
16.04.2011, 15:14  [ТС] 3
6a6ka, спасибо, на самом деле так и подразумевалось )
осталось только разобраться с командами jb и inc
0
6a6kin
231 / 101 / 6
Регистрация: 18.04.2010
Сообщений: 294
16.04.2011, 15:51 4
Assembler
1
add sum, 1; inc sum
Или
C
1
sum++
А jb - операция условного перехода (в нашем случае - если беззнаковое число i меньше 1000)
Assembler
1
2
cmp i, 1000; сравнить i c тысячей
jb m0; если меньше тысячи - следующая итерация цикла, иначе - конец цикла
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.04.2011, 15:51

Найти количество трехзначных чисел в массиве, кратных 15, но не кратных 30
Итак, мне задали по инфе 4 лабы. Спросить, как нужно выполнять некоторые...

Найти количество трехзначных чисел, кратных 15, но не кратных 30
Найти количество трехзначных чисел в массиве A, кратных 15, но не кратных 30....

Найти сумму трехзначных чисел кратных 9 и их количество
Найти сумму трехзначных чисел кратных 9 и их количество. Добавлено через 33...


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

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

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