Pokaż wyniki 1 do 5 z 5

Temat: zadanie z pascala z zastosoawniem instrukcji for

  1. #1
    Zarejestrowany
    Dec 2007
    Postów
    2

    Domyślnie

    Jak napisać program który wyznaczy sumę wszystkich dzielników liczby x.
    Proszę o pomoc.
    pozdrawiam

    edit: nikt nie potrafi mi pomóc?
    Ostatnio edytowane przez MateO : 12-08-2007 - 22:46

  2. #2
    Zarejestrowany
    Dec 2006
    Postów
    726

    Domyślnie

    sprobuj dzielić liczbę przez ja sama a potem po kolei przez o jeden
    mniejsza az dojdziesz do jedynki, za każdym razem sprawdzajac taka zaleznosc czy liczba zaokraglona
    do całości, (funkcja trunc) przez liczbę ze wcześniejszego dzielenia jest równa
    jeden, jak tak to sie dzieli bez reszty.
    "dobrzy hakerzy są sławni na cały świat, ale o hakerach geniuszach nikt nic nie wie."

  3. #3
    Avatar eMCe
    eMCe jest offline Emil Grzegorz Gubała
    Zarejestrowany
    Dec 2006
    Skąd
    Kielce
    Postów
    1,767

    Domyślnie

    żęby było szybciej to możesz dojść tylko do polowy tej liczby

    sorki za chaotyczny opis ale mnie czas goni - wiec szybko przykład jak masz liczbę to największy dzielnik różny od tej samej liczby to może być połowa tej liczby...

    np. masz liczbę 100 największy dzielnik to 100 ale oprócz 100 to największy jest 50 bo większy niż 50 nie może być bo już 51 przy pomnożeniu przez 2 daje nam większa liczbę niż 100 wiec odpada... dlatego dojedz do połowy a otrzymane wyniki zapisz a tablicy (otrzymane wyniki mam tu na myśli liczby dla których modulo jest liczba całkowita....)

    następnie podziel liczbę wyjściową przez wyniki z tablicy i otrzymasz druga tablice - gdzie będzie reszta dzielników potem zsumować i po bólu

    zastanawiam sie nad jeszcze jednym sposobem - jeszcze szybszym - ale zanim palne głupote wole przemyśleć sprawę ;p a narzazie nie ma to czasu :/
    Agencja reklamy kielce (mały kilkudniowy case pozycjonerski )

  4. #4
    Zarejestrowany
    Dec 2007
    Postów
    2

    Domyślnie

    program dzielnik;
    uses crt;
    var
    j,n:longint;
    ch:char;
    begin
    readln(n);
    for j:=1 to n do
    if n mod j=0 then writeln(j);
    ch:=readkey;
    end.

    tak zrobiłam i mi wyskakują wszystkie dzielniki, jak mam zrobić by zsumować te dzielniki?Nie będę przecież robiła tego na kalkulatorze.

  5. #5
    Zarejestrowany
    Jun 2006
    Skąd
    rand(.eu)
    Postów
    8,748

    Domyślnie

    Kod:
    program dzielnik;
    uses crt;
    
    var
    j,n,s:longint;
    ch:char;
    
    begin
    s:=0;
    readln(n);
    for j:=1 to n do
    if n mod j=0 then begin 
      writeln(j);
      s := s + j;
    end;
    ch:=readkey;
    end.
    Dodalem to co pogrubione... suma dzielnikow jest w zmiennej s.

    P.S.
    Dziwnie sie czuje... ostatnio w pascalu programowalem hmmm... jakies 10 lat temu
    Ostatnio edytowane przez TQM : 12-09-2007 - 19:11
    ctrl-alt-del.cc - soft reset site for IT admins and other staff :-)

Podobne wątki

  1. fizyka zadanie
    By kosiarz in forum Matematyka/Liczby/Kody/Teoria Chaosu
    Odpowiedzi: 0
    Autor: 10-16-2007, 22:26
  2. Matematyka - zadanie no 1.
    By sapheal in forum Przez WAS dla WAS
    Odpowiedzi: 12
    Autor: 09-30-2007, 07:07
  3. potrzebuję pomocy, jakiejś instrukcji
    By bardzopotrzebne in forum /dev/null
    Odpowiedzi: 4
    Autor: 05-04-2007, 12:31

Zasady Postowania

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •  
Subskrybuj