
espartan1047
Iota
Redactor
Verificación en dos pasos activada
Hola, necesito la ayuda de algun programador con conocimientos en C, es para una tarea. La cosa esta asi, necesito hacer un programa que dadas dos matrices (MatrizA y MatrizB) y sume los elementos de cada matriz y la guarde en dos variables (SumaA y SumaB) y si SumaA es mayor que SumaB imprima verdadero, en caso contrario, imprima falso.
El problema esta que al momento de correrlo, los resultados de la suma no son los correctos y por ende el resultado tampoco. Ayuda por favor, aqui les dejo mi codigo (Es un programa con varias opciones, en este caso la opcion "d", del switch):
por favor, ayuda. Se los agradecere mucho.
El problema esta que al momento de correrlo, los resultados de la suma no son los correctos y por ende el resultado tampoco. Ayuda por favor, aqui les dejo mi codigo (Es un programa con varias opciones, en este caso la opcion "d", del switch):
Insertar CODE, HTML o PHP:
#include <stdlib.h>
#include <stdio.h>
int main()
{
int ejercicio;
int A[10]={34,21,7,8,12,45,-4,8,6,10};
int Numeros[10], pares[10],impares[10],sumapares=0,sumaimpares=0,promediopares,promedioimpares,i,k,l,j,m,n;
int MatrizA[3][3],MatrizB[3][3],sumaA,sumaB;
int *p;
printf("Que va a hacer: ");
printf ("\n a) Ejercicio 1. \n b) Ejercicio 2. \n c) Ejercicio 3. \n d) Ejercicio 4.");
printf ("\n Ingrese el Carater EOF (presionando CTRL + Z) ");
while ( (ejercicio = getchar()) !=EOF ) {
switch ( ejercicio ) {
case 'a':
case 'A':
for (i=1;i<=10;i++){
printf ("Dame el primer elemento de la lista de numeros ");
scanf ("%d", &Numeros[i]);
}
for (i=1;i<=10;i++){
if (Numeros[i]%2==0){
k++;
}
else {
l++;
}
}
for (i=1;i<=10;i++){
if (Numeros[i]%2==0){
for (j=1;j<=k;j++){
pares[j]=Numeros[i];
sumapares=sumapares+pares[j];
}
}
else {
for (m=1;m<=l;m++){
impares[m]=Numeros[i];
sumaimpares=sumaimpares+impares[m];
}
}
} /*Cierre del for con i */
printf ("El promedio de numeros impares es %d ", sumaimpares/l);
printf ("El promedio de numeros pares es %d ", sumapares/k);
break;
case 'b':
case 'B':
p=&A[2];
p++;
printf ("\n P1 = %d ", (*p)+1);
break;
case 'c':
case 'C':
printf ("Ejercicio 3");
break;
case 'd':
case 'D':
for (i=1;i<=3;i++){
for (j=1;j<=3;j++){
printf ("Dame el valor de la posicion %d %d ", i,j);
scanf ("%d", &MatrizA[i][j]);
sumaA = sumaA + MatrizA[i][j];
}
}
printf ("\n");
for (i=1;i<=3;i++){
for (j=1;j<=3;j++){
printf ("Dame el valor de la posicion %d %d ", i,j);
scanf ("%d", &MatrizB[i][j]);
sumaB = sumaB + MatrizB[i][j];
}
}
if (sumaA > sumaB){
printf ("\nVerdadero");
}
else if (sumaA < sumaB) {
printf ("\nFalso");
printf ("%d",sumaA);
printf ("\n%d",sumaB);
}
else if (sumaA == sumaB){
printf ("\nLas matrices son iguales");
}
break;
case '\n':
case '\t':
case ' ':
break;
default:
printf("Introduzco una letra incorrecta, intentelo de nuevo");
break;
}
}
system ("pause");
return 0;
}
por favor, ayuda. Se los agradecere mucho.