powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Задачка на С++
10 сообщений из 10, страница 1 из 1
Задачка на С++
    #34517798
MusicMan_67
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помогите решить задачу, вернее перевести её с VC++ на TurboC++. Дело в том, что в турбо нет таких библиотек как в вижуале. Незнаю как переназначить переменные...


#include <iostream>
#include <iomanip>
#include <ctime>
using namespace std;
int** DelRow(int **m, int &row, int col, int index);
int** DelCol(int **m, int row, int &col, int index);
void print(int **m,int row,int col);
int _tmain(int argc, _TCHAR* argv[])
{
srand(time(0));
int row,col;
cout<<"Enter row"<<endl;
cin>>row;
cout<<"Enter column"<<endl;
cin>>col;
int **mass = new int *[row];
for(int i = 0;i<row;++i){
mass = new int[col];
for(int j = 0;j<col;++j)
mass[j] = rand() % 100;
}
system("cls");
print(mass,row,col);
int index_row,index_col;
int MAX = mass[0][0];
for(int i = 0;i<row;++i){
for(int j = 0;j<col;++j){
if(mass[j]>MAX){
MAX = mass[j];
index_row = i;index_col = j;
}
}
}
cout<<"Maximum is : "<<MAX<<endl;
cout<<"Row is : "<<index_row<<endl;
cout<<"Column is : "<<index_col<<endl;
mass = DelRow(mass, row, col, index_row);
mass = DelCol(mass, row, col, index_col);
print(mass,row,col);
for(i=0;i<row;i++)
delete[] mass;
delete[] mass;
return 0;
}
int** DelRow(int **m, int &row, int col, int index){

int **temp = new int*[--row];
for(int i=0;i<row+1;i++){
if(i < index) temp = m;
else if(i > index) temp[i-1] = m;
else delete[] m;
}
delete[] m;
return temp;
}
int** DelCol(int **m, int row, int &col, int index){
col--;
int **temp = new int*[row];
for(int i=0;i<row;i++){
temp = new int[col];
for(int j=0;j<col+1;j++){
if(j < index) temp[j] = m[j];
if(j > index) temp[j-1] = m[j];
}
}
for(i=0;i<row;i++) delete[] m;
delete[] m;
return temp;
}
void print(int **m,int row,int col){
cout<<endl;
for(int i=0;i<row;i++){
for(int j=0;j<col;j++)
cout<<setw(5)<<m[j];
cout<<"\n\n";
}
}

Спасибо заранее тем, кто поможет! Сам ещё плохо разбираюсь в С++, но вот для курсовой необходимо решить эту задачу. Надеюсь поможете, не откажете :)
...
Рейтинг: 0 / 0
Задачка на С++
    #34517801
MusicMan_67
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А сама задачка то вот она: Дана произвольная квадратная матрица. Удалить из неё строку и столбец на пересечении которой находится максимальный элемент данной диагонали.


Пример:
существует массив
1 2 3
4 5 6
7 8 9

Максимальный элемент - 9, удаляем строку 3 и столб 3.


Помогите плиз.
...
Рейтинг: 0 / 0
Задачка на С++
    #34518005
Borr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Смотри сюда

Потоим перебери массив найди max типа
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
int max = mas[ 0 ][ 0 ], row, col;
for(int i=  1 ; i<=r; i++)//Кол-во колонок
 for(int t= 1 ; t<=k; t++ )//строк
  if(max<mas[i][t])
   {
     max = mas[i][t]
     col = i;
     row = t;
   }
И удаляй элементы col и row ты знаешь какие (это на любом компиляторе C++ должно сработать).
...
Рейтинг: 0 / 0
Задачка на С++
    #34518066
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MusicMan_67Помогите решить задачу, вернее перевести её с VC++ на TurboC++. Дело в том, что в турбо нет таких библиотек как в вижуале. Незнаю как переназначить переменные...


Какие функции библиотек тебя инетересуют?
...
Рейтинг: 0 / 0
Задачка на С++
    #34519344
Фотография blinded
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akh MusicMan_67Помогите решить задачу, вернее перевести её с VC++ на TurboC++. Дело в том, что в турбо нет таких библиотек как в вижуале. Незнаю как переназначить переменные...


Какие функции библиотек тебя инетересуют?
А он сам не знает. По крайней мере у него таких заголовочных файлов нет. Вместо них надо написать
# include <iostream.h>
# include<time.h>
using namespace std; - в топку.Ну может еще endl тоже
srand & rand где-нибудь в math.h
A так длжно работать
...
Рейтинг: 0 / 0
Задачка на С++
    #34520075
kolobok0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MusicMan_67....Дело в том, что в турбо нет таких библиотек как в вижуале. ...

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


с уважением
(круглый)
...
Рейтинг: 0 / 0
Задачка на С++
    #34520663
MusicMan_67
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
blinded Akh MusicMan_67Помогите решить задачу, вернее перевести её с VC++ на TurboC++. Дело в том, что в турбо нет таких библиотек как в вижуале. Незнаю как переназначить переменные...


Какие функции библиотек тебя инетересуют?
А он сам не знает. По крайней мере у него таких заголовочных файлов нет. Вместо них надо написать
# include <iostream.h>
# include<time.h>
using namespace std; - в топку.Ну может еще endl тоже
srand & rand где-нибудь в math.h
A так длжно работать
Да это само собой переделал. При компилировании затыкается на указании переменной _tmain, т.е. в строчке
int _tmain(int argc, _TCHAR* argv[])

В сообщении об ошибке написано:
Error ..\1.cpp 8: ) expected
Error ..\1.cpp 9: Declaration terminated incorrectly

Начинающему понять весьма сложно.
...
Рейтинг: 0 / 0
Задачка на С++
    #34520755
Фотография blinded
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tmain-> main
TCHAR* argv[] -> const char* argv[]
...
Рейтинг: 0 / 0
Задачка на С++
    #34530837
MusicMan_67
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Посмотрите, вот я написал программу на половину.
Есть косяки, которые я исправить немогу, незнаю как. Помогите пожалуста.
Вот исходник программы, написанный мной.

#include <stdio.h>
#include <iomanip.h>
#include <iostream.h>
#include <conio.h>
#include <stdlib.h>
#define IC for (i=0;i<n;i++)
#define JC for (j=0;j<n;j++)

int i,j,n;
int A[100][100];
int Anew[100][100];
void print_matrix(void);

int main(void)
{
cout<<"Vvedite razmernost massiva: "<<ends;
cin>>n;
cout<<"Vvedite "<<n*n<<" elementov massiva:"<<endl;
IC
JC
cin>>A [j];
print_matrix();
return 0;
}


void print_matrix(void)
{
cout<<"Massiv: "<<endl;
cout<<"\n==================="<<endl;
IC
{
JC
cout<<setprecision(4)<<setw(5)<<A[j];
cout<<endl;
}



cout<<"==================="<<endl;

int max;
max=0;
for(i=0;i<n;i++)
for(j=0;j<n;j++)
if(A[j]>max)
max=A[j];
cout<<"Maximalniy element: "<<max;
int mas = A[0][0],mrow,mcol;
{ IC

JC
if(A[j]>max)
max=A[j];
mrow =i;
mcol =j;
}
cout<<"\nKoordinati max. elementa: ["<<mrow<<"]["<<mcol<<"]";


getch();
}


Вот там где присваиваются значения номер строки и номер столбца переменным mrow и mcol почему то не работают в выводе строки. И помогите дальше дописать, создать новый массив, уже с удалённой строчкой и столбцом.


Условие задачи:
существует двумерный массив. Удалить строку и столбец, на пересечении которых находится максимальный элемент.
Поясню:

1 5 9
6 3 1
2 4 8

Максимальный элемент = 9, значит удаляем строку №1 и столбец №3.

Помогите пожалуста, завтра нужно сдать уже.
...
Рейтинг: 0 / 0
Задачка на С++
    #34531355
Фотография blinded
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуй так
Код: plaintext
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.
#include <stdio.h>
#include <iomanip.h>
#include <iostream.h>
#include <conio.h>
#include <stdlib.h>

// Надо сделать чтобы было совсем непонятно

// #define IC for (i=0;i<n;i++)
// #define JC for (j=0;j<n;j++)

int i,j,n;
int A[ 100 ][ 100 ];
int Anew[ 100 ][ 100 ];
void print_matrix(void);

int main(void)
{
	cout<<"Vvedite razmernost massiva: "<<ends;
	cin>>n;
	cout<<"Vvedite "<<n*n<<" elementov massiva:"<<endl;
	for (int i =  0 ; i < n; ++i)
	  for (int j=  0 ; j < n; ++j)
	    cin>>A[i][j];
	print_matrix();
	return  0 ;
}


void print_matrix(void)
{
  cout<<"Massiv: "<<endl;
  cout<<"\n==================="<<endl;
  for (int i =  0 ; i < n; ++i)
  {
    for (int j=  0 ; j < n; ++j)
    cout<< setprecision( 4 ) << setw( 5 ) << A[i][j];
    cout<<endl;
  }
  cout<<"==================="<<endl;
  int mrow = mcol =  0 ;

  for(i= 1 ;i<n;i++)
    for(j= 0 ;j<n;j++)
      if(A[i][j]>A[mrow][mcol])
      {
        mrow = i;
        mcol = j;
      }
  cout<<"Maximalniy element: A[ " << mrow << ", " << mcol << "] = " << A[mrow][mcol];
  int i;
  for (i =  0 ; i < mrow; ++i)
  {
    int j;
    for (j =  0 ; j < mcol; ++j)
      Anew[i][j] = A[i][j];
    for (++j; j < n; ++j)
      Anew[i][j- 1 ] = A[i][j];
  }
  for ( ++i; i < n; ++i)
  {
    int j;
    for (j =  0 ; j < mcol; ++j)
      Anew[i- 1 ][j] = A[i][j];
    for (++j; j < n; ++j)
      Anew[i- 1 ][j- 1 ] = A[i][j];
  }
  for (int i =  0 ; i < n- 1 ; ++i)
  {
    for (int j=  0 ; j < n- 1 ; ++j)
    cout<< setprecision( 4 ) << setw( 5 ) << Anew[i][j];
    cout<<endl;
  }
  getch();
}
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Задачка на С++
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]