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

tablice sumowanie dwóch przekątnych -problem

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
0 głosów
2,884 wizyt
pytanie zadane 13 stycznia 2018 w C i C++ przez mn130496 Gaduła (3,530 p.)

Witam

Mam za zadanie obliczyć sumę dwóch przekątnych tablicy dwuwymiarowej i potem wyzerować te wartości.

Napisałem taki kod programu:

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

int main(void)
{
    int i, j,suma=0;
    int tab [3][3];
    printf("Podaj elementy tablicy ");
    for(i=0;i<3;i++)
    {
        for(j=0;j<3;j++)
        {
            scanf("%d",&tab[i][j]);
        }
    }
    for(i=0;i<3;i++)
    {
        for(j=0;j<3;j++)
        {
            printf("element [%d , %d]=%d",i,j,tab[i][j]);
        }
        printf("\n");
    }
    printf("------------------------------------------------------------------------------------ \n\n");
    printf("Wyswietlenie na przekatnej\n");
    for(i=0;i<3;i++)
    {
        for(j=0;j<3;j++)
        {
            if(i==j)
            {
                printf("Elemet [%d , %d]=%d",i,j,tab[i][j]);
                suma=suma+tab[i][j];
                printf("suma: %d",suma);
            }
            printf("\n");
        }
    }
    return (0);
}

Program co prawda wyświetla sumę ale wydaje mi się , że źle ją liczy. Czy ktoś może mi sprawdzić ten kod i powiedzieć co jest źle.Dodam jeszcze,że Program piszę w języku c. Z góry dziękuję.

pozdrawiam

komentarz 13 stycznia 2018 przez criss Mędrzec (172,590 p.)

Mam za zadanie obliczyć sumę dwóch przekątnych tablicy dwuwymiarowej i potem wyzerować te wartości.

Twój program liczy sume elementów znajdujących się na jednej przekątnej. Drugiej w ogóle nie wziąłeś pod uwagę. Zerowania w ogóle żadnego nie widać.

komentarz 13 stycznia 2018 przez mn130496 Gaduła (3,530 p.)
acha ok dziękuję za pomoc zaraz to poprawię i dodam zerowanie tych wartości

1 odpowiedź

0 głosów
odpowiedź 13 stycznia 2018 przez criss Mędrzec (172,590 p.)

Jak wspomniałem w komentarzu - w ogóle nie wziąłeś pod uwage drugiej przekątnej. Zauważ też, że nie potrzebujesz dwóch pętli do tego. Możesz tak:

for (i = 0; i < 3; ++i)
   suma += tab[i][i];

Chcąc obliczyć sume elementów na drugiej przekątnej też możemy wystartować od góry, ale tym tym razem od prawej, nie od lewej. Więc drugi indeks przy sumowaniu drugiej przekątnej będzie (3-i).

Podobne pytania

0 głosów
2 odpowiedzi 893 wizyt
pytanie zadane 11 stycznia 2018 w C i C++ przez mn130496 Gaduła (3,530 p.)
0 głosów
1 odpowiedź 1,383 wizyt
pytanie zadane 8 grudnia 2016 w C i C++ przez Arek Użytkownik (510 p.)
+1 głos
2 odpowiedzi 634 wizyt
pytanie zadane 25 lutego 2021 w JavaScript przez MarcoPolo Nowicjusz (180 p.)

93,187 zapytań

142,203 odpowiedzi

322,023 komentarzy

62,515 pasjonatów

Advent of Code 2024

Top 15 użytkowników

  1. 2581p. - dia-Chann
  2. 2537p. - Łukasz Piwowar
  3. 2528p. - Łukasz Eckert
  4. 2514p. - CC PL
  5. 2476p. - Tomasz Bielak
  6. 2445p. - Łukasz Siedlecki
  7. 2443p. - rucin93
  8. 2201p. - Michal Drewniak
  9. 2156p. - Marcin Putra
  10. 2152p. - Adrian Wieprzkowicz
  11. 2105p. - Mikbac
  12. 1941p. - Anonim 3619784
  13. 1733p. - rafalszastok
  14. 1701p. - Michał Telesz
  15. 1580p. - ssynowiec
Szczegóły i pełne wyniki

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!

...