Solved

# maximum value(location) in array

Posted on 2006-11-09
256 Views
Last Modified: 2010-04-15
hi,
I have a program like below how can I modify it to let it return me the location of maximum value

for example:
row 0 has maximum 4 and loacted in t[0][0]
row 0 has maximum 4 and loacted in t[0][1]
row 1 has maximum 8 and loacted in t[1][0]
row 2 has maximum 4 and loacted in t[2][2]

----------code------------------------
#include <stdio.h>
#include <stdlib.h>
#include <float.h>

int t [3][3]={{4,4,2},
{8,2,1},
{3,3,4}
};

main (){

int i,j, max, allmax;
allmax=0;

for (i=0; i<3 ; i++)
{
max = 0;
for (j=0; j<3; j++)
{
if (t[i][j]>max)
{
max=t[i][j];
}

if (t[i][j]>allmax)
{
allmax=t[i][j];
}
}

printf("row[%d] has maximun %d and loacte in t[][]: \n",i,max );
}

printf("allmax is : %d\n", allmax );
system("pause");
return 0;

}
0
Question by:rmtogether
[X]
###### Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

• Help others & share knowledge
• Earn cash & points
• Learn & ask questions
• 3
5 Comments

LVL 86

Expert Comment

ID: 17908150
Similar to your last Q, you are almost there - make that

#include <stdio.h>
#include <stdlib.h>
#include <float.h>

int t [3][3]={  {3,3,4},
{8,2,1},
{3,3,4}
};

main (){

int i,j, max, allmax;

allmax = 0;
for (i=0; i<3 ; i++){
max = 0;
for (j=0; j<3; j++){
if (t[i][j] > max) {
max=t[i][j];
}
if (t[i][j] > allmax) {
allmax=t[i][j];
}
}
printf("max vaule is : %d\n",max );
}

printf("max vaule overall is : %d\n",allmax );

system("pause");
return 0;

}
0

LVL 86

Expert Comment

ID: 17908169
Sorry, missed the 'location part:

#include <stdio.h>
#include <stdlib.h>
#include <float.h>

int t [3][3]={  {3,3,4},
{8,2,1},
{3,3,4}
};

main (){

int i,j, max, allmax, alli = 0, allj = 0;

allmax = 0;
for (i=0; i<3 ; i++){
max = 0;
for (j=0; j<3; j++){
if (t[i][j] > max) {
max=t[i][j];
}
if (t[i][j] > allmax) {
allmax=t[i][j];
alli = i;
allj = j;
}
}
printf("max vaule is : %d\n",max );
}

printf("max vaule overall is : %d at %d/%d\n",allmax, alli, allj );

system("pause");
return 0;

}
0

Author Comment

ID: 17908261

how can I get the maximum value for each row as well
the final output look like

row 0 has maximum 4 and loacted in t[0][0]
row 0 has maximum 4 and loacted in t[0][1]
row 1 has maximum 8 and loacted in t[1][0]
row 2 has maximum 4 and loacted in t[2][2]

max over over is 8 is in t[1][0]
0

LVL 86

Accepted Solution

jkr earned 500 total points
ID: 17908289
Just add that part from your code again, e.g.

#include <stdio.h>
#include <stdlib.h>
#include <float.h>

int t [3][3]={  {3,3,4},
{8,2,1},
{3,3,4}
};

main (){

int i,j, max, allmax, alli = 0, allj = 0, rowj = 0;

allmax = 0;
for (i=0; i<3 ; i++){
max = 0;
for (j=0; j<3; j++){
if (t[i][j] > max) {
max=t[i][j];
rowj = j;
}
if (t[i][j] > allmax) {
allmax=t[i][j];
alli = i;
allj = j;
}
}
printf("max vaule is : %d at %d\n",max,rowj );
}

printf("max vaule overall is : %d at %d/%d\n",allmax, alli, allj );

system("pause");
return 0;

}
0

LVL 84

Expert Comment

ID: 17910172
#include <stdio.h>
#include <stdlib.h>
#include <float.h>

int t [3][3]={  {4,4,2},
{8,2,1},
{3,3,4}
};

main (){

int i,j, max, allmax, alli = 0, allj = 0, rowj = 0;

allmax = 0;
for (i=0; i<3 ; i++){
max = 0;
for (j=0; j<3; j++){
if (t[i][j] > max) {
max=t[i][j];
rowj = j;
}
if (t[i][j] > allmax) {
allmax=t[i][j];
alli = i;
allj = j;
}
}
for (j=0; j<3; j++){
if( t[i][j] == max ){
printf("row %d has maximum %d and loacted in t[%d][%d]\n",i,max,i,j );
}
}
}

printf("max vaule overall is : %d at %d/%d\n",allmax, alli, allj );

system("pause");
return 0;

}
0

## Featured Post

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

An Outlet in Cocoa is a persistent reference to a GUI control; it connects a property (a variable) to a control.  For example, it is common to create an Outlet for the text field GUI control and change the text that appears in this field via that Ouâ€¦
Preface I don't like visual development tools that are supposed to write a program for me. Even if it is Xcode and I can use Interface Builder. Yes, it is a perfect tool and has helped me a lot, mainly, in the beginning, when my programs were smallâ€¦
The goal of this video is to provide viewers with basic examples to understand how to create, access, and change arrays in the C programming language.
The goal of this video is to provide viewers with basic examples to understand and use conditional statements in the C programming language.
###### Suggested Courses
Course of the Month4 days, 16 hours left to enroll

#### 739 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.