Hej,
poszukuję algorytmu, który mając na wejściu daną liczbę podawałby czego jest ona wielokrotnością - tj. podaję 6, a algorytm "pisze", że 6 jest wielokrotnością liczby 2 itd.
Pozdrawiam ;)
0
0
@SimpleNam3 - jeśli potrzebujsz pomocy w napisaniu algorytmu to pokaż co do tej pory zrobiłeś, a na pewno otrzymasz cenne wskazówki; Jeśli zaś nie masz zamiaru nic zrobić czyli wyciągnąć gotowca, to albo zapłać (a wątek trafi do odpowiedniego działu) albo wątek zostanie usunięty.
0
Mógłbyś sprecyzować? Zasadniczo poprawny algorytm odpowiadający twojemu opisowi (C, bo nie sprecyzowałeś języka):
void wielokrotnosc(int x) {
printf("%d jest wielokrotnoscia %d", x, 1);
}
(każda liczba jest wielokrotnością 1). Albo
void wielokrotnosc(int x) {
printf("%d jest wielokrotnoscia %d", x, x);
}
(każda liczba jest wielokrotnością siebie samej).
2 nie jest nawet największą liczbą dzielącą 6. A może chodzi Ci o wszystkie wielokrotności? Precyzja.
2
Prosze bardzo, funkcja PrintMultiples :]
.Ltext0:
.section .rodata
.LC0:
0000 25640A00 .string "%d\n"
.text
.globl PrintMultiples
PrintMultiples:
.LFB0:
.cfi_startproc
0000 55 pushq %rbp
.LCFI0:
.cfi_def_cfa_offset 16
.cfi_offset 6, -16
0001 4889E5 movq %rsp, %rbp
.LCFI1:
.cfi_def_cfa_register 6
0004 4883EC20 subq $32, %rsp
0008 897DEC movl %edi, -20(%rbp)
000b 8B45EC movl -20(%rbp), %eax
000e 83E801 subl $1, %eax
0011 8945FC movl %eax, -4(%rbp)
0014 EB2C jmp .L2
.L4:
0016 8B45EC movl -20(%rbp), %eax
0019 89C2 movl %eax, %edx
001b C1FA1F sarl $31, %edx
001e F77DFC idivl -4(%rbp)
0021 89D0 movl %edx, %eax
0023 85C0 testl %eax, %eax
0025 7517 jne .L3
0027 B8000000 movl $.LC0, %eax
00
002c 8B55FC movl -4(%rbp), %edx
002f 89D6 movl %edx, %esi
0031 4889C7 movq %rax, %rdi
0034 B8000000 movl $0, %eax
00
0039 E8000000 call printf
00
.L3:
003e 836DFC01 subl $1, -4(%rbp)
.L2:
0042 837DFC01 cmpl $1, -4(%rbp)
0046 75CE jne .L4
0048 C9 leave
.LCFI2:
.cfi_def_cfa 7, 8
0049 C3 ret
.cfi_endproc
.LFE0:
.Letext0: