Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?
Гродненский Форум
18 Июль 2025, 02:51:46
Новости, реклама:
   Главная   Новости Гродно Помощь Игры Календарь Войти Регистрация   Меню
Гродненский Форум > Компьютеры > Программирование
(Модераторы: Админ, barmalei) > Тема:

Поиск логической ошибки в коде проги на C++

Страниц  :   Вниз
  Печать  
Автор Тема: Поиск логической ошибки в коде проги на C++  (Прочитано 966 раз)
0 Пользователей и 1 Гость смотрят эту тему.
RuNo
Молодой Гродненец
*

Репутация: +11/-0
Offline Offline

Пол: Мужской
Сообщений: 47


lol)

Просмотр профиля
« : 14 Март 2012, 19:28:26 »

Дана действительная матрица [aij]i,j=1,…,n. Получить
действительную матрицу [bij]i,j=1,…,n, элемент bij которой
равен количеству положительных элементов данной матрицы,
расположенных в заштрихованной области, определяемой
индексами i, j как показано на рисунке. Размер матрицы и ее
элементы вводятся c клавиатуры. (Возможно понадобится условие)


Сам код:
#include <iostream>
#include <iomanip>
using namespace std;
void mass_in(int n,double **mass)
{
   int i,j;
   for(i=0; i < n; i++ )
      for(j=0; j < n; j++ )
         {
            cout<<"mass["<<i<<"]["<<j<<"]=";
            cin>>mass[j];
            }
}


void mass_out(int n,double **mass)
{
   int i,j;
   for(i=0; i < n; i++ )
   {
      for(j=0; j < n; j++ )
            cout<<mass[j]<<' ';
      cout<<endl;
   }
}


double sum(int n, double **a, int k, int l)
{
   double summa=0;
   int i,j;
   for(i=0; i < n; i++ )
   {
      for(j=0; j < n; j++ )
      {
         if ( i!=k && j!=l ) summa+=a[j];
      }
   
   }
   return summa;
}


void fullb (int n, double **b, double **a)
{
   for(int i=0; i < n; i++ )
   {
      for(int j=0; j < n; j++ )
      {
         b[j]=sum(n,a,i,j);
      }
   
   }
}

int main()
{
   int n;

   int i;

   do
   {
      cout<<"Input n: "; cin>>n;
      if ( n <= 0 )
         cout<<"Not correct n";
   }while( n <= 0);

    double **ptr;
   double **ptr2;
   ptr=new double*[n];
   for(i=0; i<n; i++) {
      ptr=new double[n];}

   ptr2=new double*[n];
   for(i=0; i<n; i++) {
      ptr2=new double[n];}

   mass_in(n,ptr);
   mass_out(n,ptr);

   fullb(n,ptr2,ptr);

   mass_out(n,ptr2);
   return 0;
}
   


Ошибка:
1>------ Построение начато: проект: lab11_2, Конфигурация: Debug Win32 ------
1>  lab11_2.cpp
1>MSVCRTD.lib(crtexew.obj) : error LNK2019: ссылка на неразрешенный внешний символ _WinMain@16 в функции ___tmainCRTStartup
1>D:\учебная\Универ\Основы Программирования\labi\laba11\Debug\lab11_2.exe : fatal error LNK1120: 1 неразрешенных внешних элементов
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========


Попрошу проанализировать код и подсказать в каком именно моменте возникает эта проблема.
Записан

Лол)
DimaFromGrodno
Настоящий гродненец
****

Репутация: +172/-2
Offline Offline

Пол: Мужской
Сообщений: 875

Просмотр профиля Email
« Ответ #1 : 14 Март 2012, 22:27:55 »

1) Разберись с преобразованиями типов
2) Почитай, что тебе пишет компилятор
3) А что, нынче на матфаке стали разрешать к матрицам по одному индексу обращаться?
Записан
RILLey_ELf
Гость
« Ответ #2 : 15 Март 2012, 09:56:51 »

в этих строках ошибка:

if ( i!=k && j!=l ) summa+=a[j];

b[j]=sum(n,a,i,j);
Записан
Страниц  :   Вверх
  Печать  
 
Перейти в:  

Войти
Войдите, чтобы добавить комментарий

Войдите через социальную сеть

Имя пользователя:
Пароль:
Продолжительность сессии (в минутах):
Запомнить:
Забыли пароль?

Контакт
Powered by MySQL Powered by PHP Мобильная версия
Powered by SMF 1.1.20
SMF © 2006-2025, Simple Machines
Simple Audio Video Embedder
| Sitemap
Valid XHTML 1.0! Valid CSS!
Страница сгенерирована за 0,094 секунд. Запросов: 20.