ayundeme a resolver esto problemas :(

Iniciado por alkimista1988, 14 Julio 2011, 21:40 PM

0 Miembros y 1 Visitante están viendo este tema.

alkimista1988

bueno estoy haciendo una tarea que me dejo el profesor y de verdad estoy teniendo un poco de problemas al resolverlos.

prob-1:Se tiene un vector de 15 elementos de tipo entero, calcule el menor elemento e indicar cuál es la posición que ocupa el número en el vector.

#include "stdio.h"
#include "conio.h"
main()
{
int vector[15],i,a=0;
for (i=0;i<15;i++)
{
scanf("%d",&vector[i]);
//con esto averiguamos el mayor numero del vector.
if (a<=vector[i])
a=vector[i];
}
for (i=0;i<15;i++)
{
//y con esto averiguamos el menor numero
if (a>=vector[i])
a=vector[i];
}
printf("\nel menor es: %d",a);
getch();
}

bueno hasta ahi solo puedo encontrar el menor numero pero no se como podria encontrar en que poscicion se encuentra.

prob-2:Se tiene una matriz de 3x3 con números al azar, indique la suma de ambas diagonales.

#include "stdio.h"
#include "conio.h"
main()
{
int matriz[3][3],i,j,sum=0;
for (i=0;i<3;i++)
{
for (j=0;j<3;j++)
{
scanf("%d",&matriz[i][j]);
if (i==j)
sum=sum+matriz[i][j];
}
}
printf("la sum de la diagonal 1 es :%d",sum);
getch();
}

bueno hasta ahi me sale solo la suma de la primera diagonal pero como podria hallar la suma de la segunda diagonal.   

El_Java

Para encontrar la posición solo tienes que añadirle dentro del if del ultimo bucle for que una variable guarde la posicion, osea 'i', cuando encuentra el numero, algo como esto:

int k = 0;

for(int i=0; i<15; i++){
   if (a >= vector[i]){
      a = vector[i];
      k = i;
   }
}

printf("\nla posicion es: %d", a);



Y para las diagonales solo tiene que sumar matriz[2][0], matriz[1][1], matriz[0][2], implementalo como quieras.

Un saludo ;)