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

Sprawdzenie kodu programu suma początkowych liczb

0 głosów
95 wizyt
pytanie zadane 14 listopada 2017 w C i C++ przez mn130496 Obywatel (1,910 p.)

Witam 

Ostatnio na zajęciach na uczelni dostałem zadanie

Napisz program wyznaczający sumę N początkowych liczb podzielnych przez 7. Liczbę N odczytac z klawiatury.
Napisałem następujący program 

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    int n;
    int i;
    int suma=0;
    printf("Podaj liczbê calkowita n1: ");
    scanf("%d", &n);
    for (i=0;i<n;i++)
    {
        if(i%7==0)
        {
            printf("%d",i);
              suma=suma+i;
        }

    }
    printf("suma: %d \n",suma);
    system("pause");
    return (0);
}

Czy ktośmoże mi go sprawdzićczy jest dobrze?.Pozdrawiam

komentarz 14 listopada 2017 przez diablol Nałogowiec (25,560 p.)
Ale czemu sam tego nie sprawdzisz?
komentarz 14 listopada 2017 przez mn130496 Obywatel (1,910 p.)
Sprawdziłem wydaje mi się że jest ok ale chciałemżeby ktoś jeszczemi to potwierdził
komentarz 14 listopada 2017 przez Aisekai Pasjonat (20,750 p.)
A nie prościej zamiast dawać ifa, w forze zrobić i=i+7? I dodawać?
komentarz 14 listopada 2017 przez 10kw10 Pasjonat (21,760 p.)
Ale czekaj, czy ty przypadkiem nie masz wypisac n liczb? Bo teraz sprawdzasz ile jest podzielonych w zakresie 0-n
komentarz 14 listopada 2017 przez Aisekai Pasjonat (20,750 p.)
Nie sprawdza ile liczb jest podzielnych w zakresie 0-n, tylko sumuje je. Tak mi się wydaje.

Co i tak jest źle, bo N nie jest maksymalnym przedziałem tylko ilością liczb podzielnych przez 7, które trzeba zsumować.
komentarz 14 listopada 2017 przez 10kw10 Pasjonat (21,760 p.)
No to o to mi właśnie chodzi.

Mozna to nawet latwo zapisac suma = 1*7+...+n*7
komentarz 14 listopada 2017 przez Aisekai Pasjonat (20,750 p.)
(7+n*7)*n/2 <- z wzoru na Sn arytmetycznego.
komentarz 15 listopada 2017 przez Pac Plus Bywalec (2,990 p.)
Lepiej napisz moduł przyjmujący argument N który wykona sekwencję operacji które Ci koledzy podsunęli. I tylko z szacunku do optymalizacji, nie używaj %d (double precision) jeżeli chodzi o zwykłego inta. I ten "system call" można pominąć, po prostu użyj `gatchar()`.
komentarz 15 listopada 2017 przez mn130496 Obywatel (1,910 p.)
ok działa dziękuje wszystkim za pomoc

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

–2 głosów
1 odpowiedź 56 wizyt
pytanie zadane 9 listopada 2017 w C i C++ przez mn130496 Obywatel (1,910 p.)
0 głosów
2 odpowiedzi 674 wizyt
0 głosów
2 odpowiedzi 94 wizyt
pytanie zadane 3 grudnia 2017 w C i C++ przez mn130496 Obywatel (1,910 p.)
Porady nie od parady
Wynikowy wygląd pytania, odpowiedzi czy komentarza, różni się od tego zaprezentowanego w edytorze postów. Stosuj więc funkcję Podgląd posta znajdującą się pod edytorem, aby upewnić się, czy na pewno ostateczny rezultat ci odpowiada.
Ciekawy innych porad? Odwiedź tę stronę!

45,694 zapytań

86,085 odpowiedzi

171,917 komentarzy

22,161 pasjonatów

Przeglądających: 132
Pasjonatów: 7 Gości: 125

Motyw:

Akcja Pajacyk

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

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...