1.Дан двумерный массив. Определить кол-во особых элементов в масссиве. Элемент считать особым, если он в его строчке больше суммы остальных элементов строки.(В каждой строчке найти максимум, сумму строки. Если мах>(сумма строки - мах) то элемент особый).
2. В одномерном массиве найти максимальный элемент. Вставить порядковый номер максимального элемента за ним и перед ним.
Помагите пожайлуста решить 2 задачи на С++
решу за вознаграждение ICQ 395546218
если пытались решить сами то пишите что не получается на форум - поможем безвозмездно xD
если пытались решить сами то пишите что не получается на форум - поможем безвозмездно xD
Приглашаю на свой блог о программировании: pro-prof.com
я то сам почти всё зделал, только для второй я вставить не могу порядковый номер,
а для первой не могу оформить "(В каждой строчке найти максимум, сумму строки. Если мах>(сумма строки - мах) то элемент особый)"
а для первой не могу оформить "(В каждой строчке найти максимум, сумму строки. Если мах>(сумма строки - мах) то элемент особый)"
nitrozevs
Исходный код приводите. Во второй нашли наибольший элемент- значит и в первой найдете без проблем максимум в строчке.
это вторая, первой без ваших усилий небудет ))
Если наибольших элементов несколько то берется индекс только первого.
Исходный код приводите. Во второй нашли наибольший элемент- значит и в первой найдете без проблем максимум в строчке.
Код: Выделить всё
#include <iostream>
using std::endl;
using std::cout;
using std::cin;
enum ERR{
ERRNO=0,
ERRSIZE=1
};
int main(){
float *arr,max;
int num,i,imax;
cout<<"array size: ";
cin>>num;
if(num<0)
return ERRSIZE;
arr=new float[num];
for(i=0;i<num;i++)
cin>>arr[i];
cout<<"before:"<<endl;
for(i=0;i<num;i++)
cout<<arr[i]<<' ';
cout<<endl;
imax=0,max=arr[0];
for(i=1;i<num;i++)
if(max<arr[i])
max=arr[i],imax=i;
if(imax<num-1)
arr[imax+1]=imax;
if(imax>0)
arr[imax-1]=imax;
cout<<"after:"<<endl;
for(i=0;i<num;i++)
cout<<arr[i]<<' ';
cout<<endl;
cout<<"press any key to continue: ";
cin.get(),cin.get();
return ERRNO;
}
Если наибольших элементов несколько то берется индекс только первого.
Приглашаю на свой блог о программировании: pro-prof.com
я от первой только часть написал:
потом не знаю как сразу искать максимум тут же искать сумму всех элементов и выичитать из неё максимум и сравнивать(особое это число или нет)
а вторую я вобще не понел, мы решаем по простому, без всякого, хотя ладно сойдёт, НО есть одна "неувязочка" номер заменяет собой элемент перед максимумом и после максимума, а так программа просто супер, спасибо=)
Код: Выделить всё
#include<iostream.h>
#include<conio.h>
#define n 3
#define m 4
main()
{clrscr();
int a[n][m],i,j,b,c,d,max;
cout<<"Bbedite MacciB"<<'\n';
for(i=0;i<n;i++)
{for(j=0;j<m;j++)
cin>>a[i][j];};
cout<<'\n';
cout<<"iCXODHbIi MACCiB"<<'\n';
for(i=0;i<n;i++)
{for(j=0;j<m;j++)
{cout<<a[i][j]<<'\t';};
cout<<'\n';};
cout<<'\n';
for(i=0;i<n;i++)
for(j=0;j<m;j++)
{if(j==m-1)
а вторую я вобще не понел, мы решаем по простому, без всякого, хотя ладно сойдёт, НО есть одна "неувязочка" номер заменяет собой элемент перед максимумом и после максимума, а так программа просто супер, спасибо=)