BG Development


  Reply to this topicStart new topicStart Poll

> Моля за малко помощ за една задача в С++
sofialex
Публикувано на: 29-12-2022, 13:43
Quote Post



Име:
Група: Потребител
Ранг: Новопостъпил

Мнения: 2
Регистриран на: 05.12.21



Здравейте! Имам следната задача: Дадена е матрица а[3][3] с елементи цели положителни числа. Да се напише програма, която намира сумата на числата кратни на 3, но различни от 3, във всеки ред.Програмата да се реализира с отделни функции за въвеждане на елементите на масива и за намиране на сумите.
Стигнах до намиране на сумата на числата във всеки ред, но ме затруднява намирането на сумата на числата кратни на 3, но различни от 3, във всеки ред.
Моля за помощ!
CODE

#include<iostream>
#include<iomanip>
using namespace std;
int main(){
      
int a[3][3];
//Въвеждане на елементите на матрицата
for(int i=0;i<3;i++)
for(int j=0;j<3;j++)
      cin>>a[i][j];
//Обхождане на матрицата за намиране на сумата от елементите по редове  
for(int i=0;i<3;i++)
      {
      int sum=0;//инициализацията на променливата sum става в началото  на обхождането на всеки ред
      for(int j=0;j<3;j++)
            sum=sum+a[i][j];
      cout<<sum<<" ";//Извеждането на  sum става след приключване обхождането на елементите от текущия ред
      }
      cout<<endl;
//Извеждане на елементите на матрицата
for(int i=0;i<3;i++)
   {
      for(int j=0;j<3;j++)
      cout<<setw(5)<<a[i][j];
cout<<endl;
   }

return 0;
}


Това мнение е било редактирано от SuN на 29-12-2022, 15:17
PMEmail Poster
Top
devil
Публикувано на: 29-12-2022, 14:29
Quote Post



Име: Ангелов
Група: Потребител
Ранг: Почетен член

Мнения: 1499
Регистриран на: 17.05.04



Така, да кажа - този код работи (дали работи правилно, това не мога да кажа). Също така, най-учтиво искам да помоля C++ програмистите да кажат дали този код е естетически (и синтактично) ок. Финално, за да ви е гадно - аз не съм програмист. Не разбирам абсолютно нищо от C езиците. Но...ChatGTЗ-3 разбира...

CODE
#include <iostream>

using namespace std;

const int ROWS = 3;
const int COLS = 3;

// функция за въвеждане на елементите на матрицата
void inputMatrix(int matrix[][COLS])
{
   for (int i = 0; i < ROWS; i++)
   {
       cout << "Въведете елементите на ред " << i + 1 << ": ";
       for (int j = 0; j < COLS; j++)
       {
           cin >> matrix[i][j];
       }
   }
}

// функция за намиране на сумата на числата кратни на 3, но различни от 3, във всеки ред
void findRowSums(int matrix[][COLS])
{
   for (int i = 0; i < ROWS; i++)
   {
       int rowSum = 0; // инициализираме сумата на реда с 0
       for (int j = 0; j < COLS; j++)
       {
           // ако елементът е кратен на 3 и различен от 3, то го добавяме към сумата
           if (matrix[i][j] % 3 == 0 && matrix[i][j] != 3)
           {
               rowSum += matrix[i][j];
           }
       }
       cout << "Сумата на ред " << i + 1 << " e " << rowSum << endl;
   }
}

int main()
{
   int matrix[ROWS][COLS];

   inputMatrix(matrix);
   findRowSums(matrix);

   return 0;
}


--------------------
PMUsers WebsiteICQ
Top
SuN
Публикувано на: 29-12-2022, 15:27
Quote Post


Group Icon
Име:
Група: Администратор
Ранг: Почетен член

Мнения: 12278
Регистриран на: 27.01.05



QUOTE
Стигнах до намиране на сумата на числата във всеки ред, но ме затруднява намирането на сумата на числата кратни на 3, но различни от 3, във всеки ред.

Ето примерна програма, която може да послужи като вдъхновение:
CODE

#include <stdio.h>
int main() {
   int i = 6;
   if ((i % 3) == 0) { // % е оператор за деление по модул
       if (i != 3) puts ("i се дели на три без остатък, но не е три");
       else        puts ("i се дели на три без остатък, защото е три");
   } else {
       puts ("i не се дели на три без остатък");
   }
   return 0;
}


QUOTE
Но...ChatGTЗ-3 разбира...

Не успях да се регистрирам. А даже можех да го вкарам в работата си. icon_sad.gif


--------------------
Само аз не троля.
Всички коментари са плод на художествена измислица и нямат общо с действителни и недействителни лица, събития и факти.
PMEmail Poster
Top
devil
Публикувано на: 29-12-2022, 15:34
Quote Post



Име: Ангелов
Група: Потребител
Ранг: Почетен член

Мнения: 1499
Регистриран на: 17.05.04



Ам, къде срещаш проблем? Тя самата регистрация е възможно най-елементарната (няма някакви специфични или заплетени изисквания) и би трябвало за стане за под 30 сек време.


--------------------
PMUsers WebsiteICQ
Top
SuN
Публикувано на: 29-12-2022, 16:24
Quote Post


Group Icon
Име:
Група: Администратор
Ранг: Почетен член

Мнения: 12278
Регистриран на: 27.01.05



Не е това темата, но ще спомена, че след уж успешната регистрация не успях да вляза в сайта. Също така не съм получил писмо за регистрация, нито писмо при опит за възстановяване на паролата. Вероятно ме режат като не ползвам услугата на голяма компания за електронни пощи.

Иначе и аз да съм пробвал да отговоря на темите за домашно, ама на... icon_smile.gif

Това мнение е било редактирано от SuN на 29-12-2022, 16:25


--------------------
Само аз не троля.
Всички коментари са плод на художествена измислица и нямат общо с действителни и недействителни лица, събития и факти.
PMEmail Poster
Top
sofialex
Публикувано на: 29-12-2022, 16:49
Quote Post



Име:
Група: Потребител
Ранг: Новопостъпил

Мнения: 2
Регистриран на: 05.12.21



QUOTE (SuN @ 29-12-2022, 15:27)
QUOTE
Стигнах до намиране на сумата на числата във всеки ред, но ме затруднява намирането на сумата на числата кратни на 3, но различни от 3, във всеки ред.

Ето примерна програма, която може да послужи като вдъхновение:
CODE

#include <stdio.h>
int main() {
   int i = 6;
   if ((i % 3) == 0) { // % е оператор за деление по модул
       if (i != 3) puts ("i се дели на три без остатък, но не е три");
       else        puts ("i се дели на три без остатък, защото е три");
   } else {
       puts ("i не се дели на три без остатък");
   }
   return 0;
}


QUOTE
Но...ChatGTЗ-3 разбира...

Не успях да се регистрирам. А даже можех да го вкарам в работата си. icon_sad.gif

Благодаря за включването ви, но явно нещо не мога да направя както трябва. Излиза ми грешка.
PMEmail Poster
Top
SuN
Публикувано на: 29-12-2022, 17:57
Quote Post


Group Icon
Име:
Група: Администратор
Ранг: Почетен член

Мнения: 12278
Регистриран на: 27.01.05



QUOTE
Излиза ми грешка.

Продължавай да я съзерцаваш докато постигнеш прозрение.


--------------------
Само аз не троля.
Всички коментари са плод на художествена измислица и нямат общо с действителни и недействителни лица, събития и факти.
PMEmail Poster
Top
1 потребители преглеждат тази тема в момента (1 гости, 0 анонимни потребители)
Потребители, преглеждащи темата в момента:

Topic Options Reply to this topicStart new topicStart Poll

 


Copyright © 2003-2019 | BG Development | All Rights Reserved
RSS 2.0