Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
0 / 0 / 0
Регистрация: 17.01.2013
Сообщений: 5

Определить сумму элементов в тех столбцах матрицы, которые не содержат отрицательных элементов

17.01.2013, 21:38. Показов 1553. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Сразу хочу попросить прощения, если я "говнокодер".

Задача следующая:
Дана целочисленная квадратная матрица.
Написать программу, выполняющую следующие действия в виде функций с динамическим распределением памяти.
Определить:
1) сумму элементов в тех столбцах, которые не содержат отрицательных элементов;
2) минимум среди сумм модулей элементов диагоналей, параллельных диагонали матрицы.



Может много чего подключил лишнего, но просто не задумываясь откуда то копировал что бы работало... еще не думал чистить, пока не заработает.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
#include<iostream> 
#include<clocale> 
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<time.h>
#include <ctime>
#include <cstdlib>
#include <iomanip>
 
using namespace std; 
 
int**input(int,int);//функция ввода квадратной матрицы
void output(int**,int,int);//функция вывода квадратной матрицы
 
//Функция вывода матрицы
 
void output(int**z, int m,int n)
{
int i,j,s;
printf("матрица\n");
for(i=0;i<m;i++)
   { printf("\n");
    for(j=0;j<n;j++)
       {
       printf("%3d \t",z[i][j]);
       }
   }
printf("\n");
 }
 
 
 
// Функция ввода матрицы
 
int**input(int m,int n)
{
 int i,j;
 int**a;
 //динамическое выделение памяти
 a=(int**)malloc(m*sizeof(int*));
 for(i=0;i<m;i++)
    {
     a[i]=(int*)malloc(n*sizeof(int*));
     for(j=0;j<n;j++)
     {
     a[i][j]=0;
     }
    }
  //выбор способов ввода матрицы
  m2:puts("Как будем заполнять матрицу:\n1-вводя с клавиатуры,\n2-случайными числами");
  switch(getchar())
  {
   case'1':
      for(i=0;i<m;i++)
         {
           for(j=0;j<n;j++)
            {
              printf("a[%d][%d]=",i,j);
              scanf_s("%d",&a[i][j]);
            }
         }
   break;
   case'2':
      for(i=0;i<m;i++)
         {
          for(j=0;j<n;j++)
           {
             a[i][j]=rand() % 200-10;
           }
         }
   break;
   default:
       goto m2;
    break;
  }
return a;
}
 
// Главная функция
 
int main()
{
    setlocale(LC_CTYPE, "Russian_Russia.1251");
int m,n;
int**p;
    puts("Введите размер стороны квадратной матрицы\n");
    printf("Размер=");
    scanf_s("%d",&m);
    n=m;
    p=input(m,n);
    output(p,m,n);
    system("pause");
    return 0;
}
При запуске почему-то 2 раза вывод на экран: как будем заполнять матрицу.

Кто нибудь может подтолкнуть на идею реализации задачи, или дать ссылки на темы с такой же задачей. Решение первого вопроса было найдено на этом форуме, сейчас пытаюсь к себе вставить, решение второй части не нашел еще. Но больше интересует двойной вывод меню с выбором варианта заполнения матрицы.

P.S. заранее благодарю
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.01.2013, 21:38
Ответы с готовыми решениями:

Определить сумму элементов в тех столбцах матрицы, которые не содержат отрицательных элементов
Дана целочисленная квадратная матрица. Определить: 1.) сумму элементов в тех столбцах, которые не содержат отрицательных элементов; ...

Определить сумму элементов матрицы в тех столбцах, которые не содержат отрицательных элементов
Реализовать алгоритм решения задачи. Дана целочисленная квадратная матрица. Определить сумму элементов в тех столбцах, которые не содержат...

Определить сумму элементов в тех столбцах матрицы, которые не содержат отрицательных элементов.
Задание : Реализовать алгоритм решения задачи. Дана целочисленная квадратная матрица. Определить сумму элементов в тех столбцах, которые не...

1
 Аватар для TrueBit
100 / 100 / 47
Регистрация: 19.11.2012
Сообщений: 195
17.01.2013, 23:18
Строка 75 отправляет на метку m2: в строке 52. Вобще говоря метки нежелательно использовать в программах. Это всетаки c++, а не ассемблер. Но вот, переместив метку в другое место, не выводит дважды:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
#include<iostream> 
 
using namespace std; 
 
int**input(int,int);//функция ввода квадратной матрицы
void output(int**,int,int);//функция вывода квадратной матрицы
 
//Функция вывода матрицы
 
void output(int**z, int m,int n)
{
int i,j,s;
printf("матрица\n");
for(i=0;i<m;i++)
   { printf("\n");
    for(j=0;j<n;j++)
       {
       printf("%3d \t",z[i][j]);
       }
   }
printf("\n");
 }
 
 
 
// Функция ввода матрицы
 
int**input(int m,int n)
{
 int i,j;
 int**a;
 //динамическое выделение памяти
 a=(int**)malloc(m*sizeof(int*));
 for(i=0;i<m;i++)
    {
     a[i]=(int*)malloc(n*sizeof(int*));
     for(j=0;j<n;j++)
     {
     a[i][j]=0;
     }
    }
  //выбор способов ввода матрицы
 puts("Как будем заполнять матрицу:\n1-вводя с клавиатуры,\n2-случайными числами");
  m2:
  switch(getchar())
  {
   case'1':
      for(i=0;i<m;i++)
         {
           for(j=0;j<n;j++)
            {
              printf("a[%d][%d]=",i,j);
              scanf_s("%d",&a[i][j]);
            }
         }
   break;
   case'2':
      for(i=0;i<m;i++)
         {
          for(j=0;j<n;j++)
           {
             a[i][j]=rand() % 200-10;
           }
         }
   break;
   default:
       goto m2;
    break;
  }
return a;
}
 
// Главная функция
 
int main()
{
    setlocale(LC_CTYPE, "Russian_Russia.1251");
int m,n;
int**p;
    puts("Введите размер стороны квадратной матрицы\n");
    printf("Размер=");
    scanf_s("%d",&m);
    n=m;
    p=input(m,n);
    output(p,m,n);
    system("pause");
    return 0;
}
библиотеки тоже почистил...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.01.2013, 23:18
Помогаю со студенческими работами здесь

Определить сумму элементов матрицы в тех столбцах, которые не содержат отрицательных элементов
Данная целочисленность квадратная матрица. Определить: сумму элементов в тех столбцах, которые не содержат отрицательных элементов

Определить сумму элементов в тех столбцах матрицы, которые не содержат отрицательных элементов
Помогите пожалуйста. Дана целочисленная квадратная матрица.Определить: 1) сумму элементов в тех столбцах, которые не содержат...

Определить сумму элементов в тех столбцах матрицы, которые не содержат отрицательных элементов
Дана целочисленная квадратная матрица.Определить: 1)сумму элементов в тех столбцах,которые не содержат отрицательных элементов ...

Найти сумму элементов в тех столбцах матрицы, которые не содержат отрицательных элементов
Дана целочисленная квадратная матрица. Определить: 1) Сумму элементов в тех столбцах, которые не содержат отрицательных элементов;

Найти сумму элементов в тех столбцах матрицы, которые не содержат отрицательных элементов
Данная целочисленная квадратная матрица. определить: 1) сумму элементов в тех столбцах, которые не содержат отрицательных элементов. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru