• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Program do liczenie NWD n liczb

Aruba Cloud - Virtual Private Server VPS
0 głosów
4,138 wizyt
pytanie zadane 3 kwietnia 2018 w C i C++ przez mietek_arduino Początkujący (330 p.)
edycja 3 kwietnia 2018 przez Arkadiusz Waluk

Program ma za zadanie liczyć NWD n liczb. Teraz dla dowolnej konfiguracji liczb wyświetla NWD=0. Proszę o pomoc w znalezienie błędu. Mój program:

#include<iostream>
using namespace std;
void wypelnij (int*a, unsigned n)
{
    cout<<"Podaj liczby ";
    int i;
    for(i=0; i<n; i++)
        cin>>a[i];
}
int nwd (int *a, unsigned n)
{
    int w=0, r;
    int i;
    for(i=0; i<n; i++)
    {
        while (a[i]!=0)
        {
            r=w%a[i];
            w=a[i];
            a[i]=r;
        }
        w=a[i];
    }
    return w;
}
int main ()
{
    unsigned n;
    cout<<"Podaj z ilu liczb policzyc NWD ";
    cin>>n;
    int *a;
    a=new int [n];
    wypelnij (a,n);
    cout<<"wartosc NWD to "<<nwd(a,n)<<endl;
    delete [] a;
}
komentarz 3 kwietnia 2018 przez Mariusz08 Maniak (62,280 p.)
Kod bez bloczka.

1 odpowiedź

+2 głosów
odpowiedź 3 kwietnia 2018 przez Qwerty96 Stary wyjadacz (13,580 p.)
wybrane 3 kwietnia 2018 przez mietek_arduino
 
Najlepsza
for(i=0; i<n; i++)
    {
        while (a[i]!=0)
        {
            r=w%a[i];
            w=a[i];
            a[i]=r;
        }
        w=a[i];
    }
    return w;

Pętla while się kończy, gdy a[i] == 0, więc wynikiem przypisania w = a[i] będzie 0 i taka też wartość zostanie zwrócona z funkcji.

Podobne pytania

+1 głos
1 odpowiedź 1,509 wizyt
pytanie zadane 15 kwietnia 2018 w C i C++ przez Hikori Nowicjusz (180 p.)
0 głosów
3 odpowiedzi 1,713 wizyt
pytanie zadane 28 marca 2017 w C i C++ przez Kenzy Obywatel (1,160 p.)
+1 głos
1 odpowiedź 842 wizyt
pytanie zadane 15 stycznia 2022 w Assembler przez DzikieHarce Użytkownik (690 p.)

93,324 zapytań

142,323 odpowiedzi

322,390 komentarzy

62,653 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...