Форум программистов, компьютерный форум CyberForum.ru

Есть код нужно исправить ошибки - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Из строки удалить все символы, кроме пробелов, не являющиеся буквами английского алфавита http://www.cyberforum.ru/cpp-beginners/thread37195.html
Разработать консольное приложение. 1. Во введенной строке после k-го символа вставить заданную подстроку. Подстроку ввести с клавиатуры. 2. Найти и напечатать сколько раз повторяется в строке каждое слово, которое встречается в нем. Строку ввести с клавиатуры. 3. Из строки удалить все символы, кроме пробелов, не являющиеся буквами английского алфавита. Строку ввести с клавиатуры.
C++ Бинарный поиск в текстовом файле Есть текстовый файл с 10000 словами в алфавитном порядке. Функция проверяет, есть ли введенное слово в этом файле. Помогите реализовать бинарный поиск по первой букве bool slovo_true(char *slovo, FILE *stream) { char read_str, *result; fseek(stream,0,SEEK_SET); while (!feof(stream)) { result=fgets(read_str,20, stream); http://www.cyberforum.ru/cpp-beginners/thread37186.html
C++ создать файл
Помогите пожайлуста исправить программу. Файл вроде создает,а вот просмотр,добавление и изменение никак. Подскажите как поменять местами в файле записи о первых двух спортсменах.Заранее благодарен! Используя функции и режим меню, создать файл из 10 структур, просмотреть файл, добавить в файл новую информацию , применяя режим прямого доступа. Структура имеет вид: фамилия спортсмена, его номер,...
Массивы (Матрицы) C++
Общая постановка. Составить программы - одномерные массивы: задания 1-25. Массивы создаются в динамической области памяти с использованием операций NEW и DELETE. Ввод исходных данных: реальный размер массивов и их значения. Обращение к элементам массива – через косвенную адресацию. Заданы два массива А(5) и В(5). Подсчитать в них количество элементов, больших значения t и первым на печать...
C++ Помошьс функциями сравнения времени. http://www.cyberforum.ru/cpp-beginners/thread37133.html
Доброго времени суток.Курсовая работа по темам:текстовые-бинарные файлы(переброс данных с одного в другой),стэки,структуры,работа с датой и временем. Задача: 1)Запись в бинарный файл:номер поезда,направление,время отправления,время прибытия,расстояние. 2)Перебросить данныее из бинарного файла в текстовый. 3)Вывод данных из обоих файлов в 2 таблицы. 4)Вывести данные о поездах,которые...
C++ Istream_iterator Есть задача: надо заменить циклы в программе на что-то с использование обобщеенного проргаммирования и std library функций: #include <string> #include <iostream> #include <sstream> #include "merge.h" #include <algorithm> // for sort() using namespace std; подробнее

Показать сообщение отдельно
MegaVolt91
0 / 0 / 0
Регистрация: 14.05.2009
Сообщений: 29

Есть код нужно исправить ошибки - C++

29.05.2009, 16:28. Просмотров 657. Ответов 4
Метки (Все метки)

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

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
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <iostream.h>
void main()
{
void print (double **, int );
double **pd, s1, s2, k1, k2;
int n, i, j, j1, j2;
cout << " \n Bведите любое число: ";
cin >> s1;                  // Обход сбоев системы
do
{ fflush (stdin) ;
while (cout << "\n Bведить размерность квадратной "
   << " матрицы: ",!scanf (" %d ",  &n) )   /*   cіn >> n ; */
{ fflush ( stdin) ;     // Очистить системный буфер при ошибке ввода
continue;               // Повторить ввод
}
if (! (pd = (double **)malloc(sizeof (double *)*n)))
{ cout << "\ n  недостаточно свободной памяти \n";     continue;
}
for (i = 0; i < n; i ++)
if (! (*(pd+i) = (double *)malloc(sizeof (double)*n)))
{ cout << "\n Недостаточно свободной памяти \n"
  <<  " Сократите размерность матрицы";
pd = NULL;    break;    // Обнулeние указателя pd для ввода нового n.
}
} while (!pd);
cout << " Bведить пострково матрицу: \n";
for (i = 0; i<n; i++)       // Bвод матрицы
for( j = 0; j<n; j ++)
cin >> *(*(pd+i)+j);
cout << " Bведена матрица: \n";
print (pd,n);
s1 =* (*pd+1);          // Для поиска столбца с элементами выше диагонали
s2=* (* (pd+ n-1)+ n-2) ;   // Для поиска столбца с элементами ниже диагонали
j1 = 1; j2 = n-2;           // Номера столбцов для замены элементов
for( j=0; j<n; j++)
{
k1= k2 = 0.;    // Обнуляем сумму для элементов выше и ниже диагонали
for (i = 0; i<n; i++)
if (i < j )  k1+= *(*(pd+i)+j);       // Элемент выше диагонали
else
if(i>j) k2+= *(*(pd+i)+j);            // Элемент ниже диагонали
if(s1 < k1) {s1=k1; j1=j;}            // Оценка суммы выше диагонали
if(s2>k2 && j< n-1) {s2=k2; j2=j; }   // Оценка суммы ниже диагонали
}
// Обнуляемо элементы
for (i = 0; i<n; i++)
{ if (i < j1) *(*(pd+i)+j1)=0;
if (i > j2) *(*(pd+i)+j2)=0;
}
cout << "\n Преобразованная матрица:\n";
print(pd, n);
for (i=0; i < n; i ++)              // "Увольняем память
free (* (pd+i)) ; free (pd) ; getch ();
}
void print(double **pd, int n)
{  for(int i=0;i<n;i++)                 // Вывод матрицы
{ cout << endl;
for(int j = 0; j<n; j ++)
printf ("%8.21f",*(*(pd+i)+j));
    }
}
Оно ничему не выводит. А нужно вывести номер столбца, у которого сумма элементов, расположенных ниже главной диагонали наименьшая. Помогите пожалуйста
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru