#include<stdio.h> #include<conio.h> int leer_entero(char mensaje[50],int min, int max){ int dato; do{ printf("%s\n",mensaje); scanf("%d",&dato); }while(dato<min||dato>max); return dato; } float leer_float(char mensaje[50],float min, float max){ float dato; do{ printf("%s\n",mensaje); scanf("%f",&dato); }while(dato<min||dato>max); return dato; } void leer_matriz(float m[50][50],int fila,int col){ for(int f=0;f<fila;f++){ for(int c=0;c<col;c++){ m[f][c]=leer_float("Ingrese un valor: ",-32768.0,32767.0); } } } void imprimir_matriz(float m[50][50],int fila,int col){ for(int f=0;f<fila;f++){ for(int c=0;c<col;c++){ printf("%8.2f",m[f][c]); } printf("\n"); } } void obtener_simetrica(float m[50][50],int fila, int col,float s[50][50]){ for(int f=0;f<fila;f++) { for(int c=0;c<col;c++){ s[f][c]=(m[f][c]+m[c][f])/2.0; } } } void obtener_antisimetrica(float m[50][50],int fila, int col,float a[50][50]){ for(int f=0;f<fila;f++) { for(int c=0;c<col;c++){ a[f][c]=(m[f][c]-m[c][f])/2.0; } } } int main(){ float matriz[50][50]; float simetrica[50][50]; float antisimetrica[50][50]; int fila,columna; fila=leer_entero("Ingrese el numero de filas: ",1,50); columna=fila; //las filas y columnas deben ser iguales en matiz cuadrada printf("lectura de matriz\n"); leer_matriz(matriz,fila,columna); printf("Impresion matriz original\n"); imprimir_matriz(matriz,fila,columna); obtener_simetrica(matriz,fila,columna,simetrica); printf("Impresion matriz simetrica\n"); imprimir_matriz(simetrica,fila,columna); obtener_antisimetrica(matriz,fila,columna,antisimetrica); printf("Impresion matriz antisimetrica\n"); imprimir_matriz(antisimetrica,fila,columna); }
Este blog provee información sobre temas relacionados con la programación de algoritmos en el lenguaje C/C++, se desarrollan ejercicios para que el estudiante o interesado en la programación comprenda este proceso mediante ejemplos prácticos que incluyan sentencias de decisión, sentencias de repetición, funciones, arreglos o vectores, matrices o arreglos N-Dimensionales, ficheros y estructuras de datos.
martes, 23 de junio de 2015
Matrices en lenguaje C/C++ con funciones
Vamos a realizar un programa con funciones el cual permita ingresar datos en una matriz y calcule la matriz simétrica y antisimétrica:
Suscribirse a:
Enviar comentarios (Atom)
http://tohtml.com/cpp/
ResponderEliminar