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

Переделать в функции с рабочим указателем. - C++

Восстановить пароль Регистрация
 
juli.ya92
2 / 2 / 0
Регистрация: 25.09.2010
Сообщений: 82
17.11.2010, 18:21     Переделать в функции с рабочим указателем. #1
1.void zadacha1(int n, int **a)
{

int max[120];
int k=0,k1,k2=0,i,j;
for (i=0; i<=n; i++)
max[i]=-INT_MAX;

prosm(n,a);



for (i=1;i<=n;i++)
for (j=1; j<=n; j++)
if (a[i][j]>max[i]) max[i]=a[i][j]; // находим макимальные элементы

for (i=1; i<=n; i++)
{ if (a[i][i]==max[i]) k++;} // проверяем принадлежность к главной дигонали
if (k==n)
for (i=1;i<=n-1;i++){
if (a[i][i]<a[i+1][i+1]) k2++;} // проверка упорядоченности
if (k2!=n-1&& k==n)
{ printf("Транспонированная матрица: \n");
for (i=1;i<=n;i++)
{
for (j=1; j<=n; j++)
printf("%4d ",a[j][i]);
printf("\n");}}
else

printf("Условие не выполняется!\n");
// printf("\n");


// getch();
bioskey(0);
}
2.int zadacha2 (int n, int **a)
{
int k=0,k1=0,i,j;
//prosm(n,a);
for (i=1;i<=n;i++)
{
for (j=1; j<=n; j++)
{
if (a[i][j]==0) {k++;}
}
if (!k)
{
k1++;
}
k=0;
}
// printf("\n Количество строк не содержащие нуля = %d",k1);
// getch();
return(k1);
}
3.
int zadacha3 (int n, int **a)
{
int s,k,sum=0,i,j;
int max1[120];
clrscr();
printf("Введите число s \n");
scanf("%d",&s);
//prosm(n,a);
for (j=1;j<=n;j++)
max1[j]=-INT_MAX;
for (i=1;i<=n;i++)
{
for (j=1; j<=n; j++)
if (a[i][j]>max1[j]) { max1[j]=a[i][j]; }
}
for (i=1;i<=n;i++)
{
for (j=1; j<=n; j++)
{
if (max1[i]>s)
sum+=a[j][i];
}
}
// printf("%d",sum);
// getch();
return sum;
}
4.
void SWAP(int * a, int * b)
{
int c = *a;
*a = *b;
*b = c;
}

void zadacha4 (int n, int **a)
{
int c[10][10];
int tek=0,tek1=0,t,k,i,j;
prosm(n,a);
t=(n-1)*n;
for (i=1;i<=n;i++)
{
for (j=1; j<=n; j++)
c[i-1][j-1]=a[i][j];
}
for (i=0;i<n;i++)
for (j=0; j<n-1; j++)
if (c[i][j]<=c[i][j+1]) {tek++;}
for(i=0;i<n;i++)
for (j=0; j<n-1; j++)
if(c[i][j]>=c[i][j+1]) {tek1++;}
if (tek1==t) printf("\n Элементы упорядочены по убыванию");
else
if (tek==t) printf("\n Элементы упорядочены по возрастанию");
else
{
for (i=0; i<n; ++i )
{
for (k=n/2+1; k>0; --k )
{
for (j=0; j+k<n;++j )
{
if ( c[i][j]>c[i][j + k] )
SWAP(&c[i][j], &c[i][j + k]);
}
}
}
printf("\nSorted:\n");
for ( i=0; i<n; ++i )
for ( j=0; j<n; ++j )
printf("%2d%c", c[i][j], ( j < n - 1 ) ? ' ' : '\n');}
printf ("\n");
printf ("\n");
//getch();
bioskey (0);
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.11.2010, 18:21     Переделать в функции с рабочим указателем.
Посмотрите здесь:

Работа с указателем на массив в функции (!!!) C++
C++ Тема Функции. Переделать программы
C++ Переделать функцию c указателем на int, на функцию с указателем на void
C++ Ипользование const с указателем, параметром функции
Переделать функции в шаблон C++
В чем разница между указателем и указателем на указатель? C++
C++ Массив в функции со static указателем на него
C++ Работа с указателем из main в функции

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 03:54. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru