|
Mostrar Mensajes
|
Páginas: [1]
|
1
|
Programación / Programación C/C++ / Matriz mapa de distancias.
|
en: 11 Octubre 2012, 04:59 am
|
A B C D E F A 0 2 0 1 0 3 B 2 0 3 0 3 2 C 0 3 0 2 0 1 D 1 0 2 0 0 1 E 0 3 0 0 0 1 F 3 2 1 1 1 0
Hola, tengo el siguiente problema, no quiero que me den el ejercicio resuelto, solo que no se como encarar la lógica del mismo. Consiste en lo siquiente: guardar en una pila las distancias y los pueblos requeridos, por ejemplo si el usuario ingresa Origen = A y destino = E Salida: Camino posible:A,B,C,D,F,E Longitud: 2+3+2+1+1= 9 En realidad ya le di mil vueltas para tratar de encarar la logica pero no se x dnd empezar, si alguien puede darme una idea estaria muy agradecido.
la matriz viene a ser como un mapa de distancias entre ciudades.
|
|
|
3
|
Programación / Programación C/C++ / vector auxiliar para una matriz
|
en: 11 Septiembre 2012, 05:05 am
|
Hola quiero sumar en un vector auxiliar las filas de una matriz, he probado de mil formas pero no me da resultado, mi codigo es el siguiente:
#include <cstdlib> #include <iostream> using namespace std;
#define FILA 4 #define COL 3 typedef int matriz[FILA][COL];
int main(){
matriz m; int k, j; int vec_aux[4]; int suma=0;
for(k=0; k<FILA; k++){ for(j=0; j<COL; j++){ cout<<"Ingrese la Nota del Alumno"<<k; cin>>m[k][j]; suma = suma + m[k][j]; vec_aux[k]= suma; suma=0; } } for(k=0; k<FILA; k++){ cout<<vec_aux[k]; //Solo visualiza los datos de la ultima columna } getchar(); getchar(); }
|
|
|
4
|
Programación / Programación C/C++ / Matriz con Vector auxiliar
|
en: 10 Septiembre 2012, 23:24 pm
|
Hola, cuando quiero sumar las notas de un grupo de alumnos en un vector auxiliar y luego mostrarlos me muestra una secuencia extraña de caracteres y numeros. Tambien tengo problemas para contar los alumnos con nota mayor a 6 (Columna 2) de la matriz #include <cstdlib> #include <iostream> using namespace std;
#define FILA 4 #define COL 3 typedef int matriz[FILA][COL];
//Definicion de prototipos
void cargarMatriz(int m[][COL]); void sum_x_alu(int m[][COL]); void cant_alum_aprob(int m[][COL]); void listar_nota_alu(int m[][COL]);
void cargarMatriz(int m[][COL]){ int i, j;
for(i=0; i<FILA; i++){ for(j=0; j<COL; j++){ cout<<"Ingrese la Nota del Alumno"<<i; cin>> m[j]; } } } void sum_x_alu(int m[][COL]){ int i, j; int suma=0; int vec_aux[4]; for(i=0; i<FILA; i++){ for(j=0; j<COL; j++){ suma=suma+m[j]; vec_aux += suma; } suma=0; } for(i=0; i<=4; i++){ cout<<vec_aux; } } void cant_alum_aprob(int m[][COL]){ int i, j; int cont=0; for(i=0; i<FILA; i++){ for(j=0; j<COL; j++){ if((j=2)&&(m[j]>=6)){ cont++; } } } cout<<"La cantidad de alumnos aprobados en el 3º parcial es:"<<cont; } int main(){ matriz a;
int opcion; do{ cout<<"\n1-Cargar Notas\n"; cout<<"2-Mostrar Suma de notas por alumno\n"; cout<<"3-Cantidad alumnos aprobados\n"; cout<<"4-Salir\n"; cout<<"Escoja una opcion:\n"; cout<<"Salir:\n"; cin>>opcion; switch(opcion){ case 1: cargarMatriz(a);break; case 2: sum_x_alu(a); break; case 3: cant_alum_aprob(a); break; case 4: cout<<"Fin del programa"; default : cout<<"Opcion incorrecta"; getchar();break; } }while(opcion!=4); return 0; }
|
|
|
|
|
|
|