void int int for void int int for void int int for for void int int for int int



Documentos relacionados
1. Que rellene un array con los 100 primeros números enteros y los muestre en pantalla en orden ascendente.

Practicas de Programación Estructurada. Clave: 12125

Introducción a los Computadores Arreglos en C

INFORMÁTICA. Práctica 5. Programación en C. Grado en Ingeniería en Electrónica y Automática Industrial. Curso v1.0 (05.03.

ARREGLOS DEFINICION GENERAL DE ARREGLO

Ejercicio 1 (2 puntos. Tiempo: 25 minutos)

Informática I. While & do While

!!!!!!!! !!!!! Práctica!4.! Programación!básica!en!C.! ! Grado!en!Ingeniería!!en!Electrónica!y!Automática!Industrial! ! Curso!2015H2016!

Informática FACULTAD DE FÍSICAS

Programación. Ejercicios Tema 4 Estructuras de Control Repetitivas

EJERCICIOS DE PROGRAMACIÓN RELACIÓN VII (EJERCICIOS DE REPASO)

UNIVERSIDAD CENTRAL. Facultad de Ingeniería. Algoritmos y programación Grupo 1.4. Taller No.3

Elabore el análisis, el diseño mediante pseudocódigo y un diagrama de flujo de un algoritmo para resolver cada uno de las siguientes problemas:

Examen Principios de Programación Febrero 2012

INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA UNIDAD CULHUACÁN INTEGRANTES

Titulo: Calculo de PI

Titulo: Suma de N primeros números

Hoja de problemas Estructuras de Control

1. Manejo de memoria estática 2. Manejo de memoria dinámica

ESTRUCTURA DE DATOS: ARREGLOS

Capítulo 4 Procesos con estructuras de repetición

PRACTICA 6. VECTORES Y MATRICES.

int while while else else int else else

SOLUCION EXAMEN junio 2006

EJEMPLOS DE PROGRAMACIÓN DE FUNCIONES EN C: Página 1 de 5

OBJETIVOS. Explicar el manejo de archivos de texto. Explicar el manejo de archivos binarios. Desarrollar programas que usen archivos.

Aprendiendo a programar Microcontroladores PIC en Lenguaje C con CCS

Lenguaje C Funciones. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia

Que el alumno utilice las facilidades de vectores y matrices para el procesamiento de datos y organización de la información

TEMA 5. CONTROL DE FLUJO DEL PROGRAMA. Sentencia Instrucción Expresión Operadores + Operandos Sintaxis: Sentencia ;

Tema 4: Estructuras de Control Estructura y Contenidos

1. Cuestiones. Ejercicios resueltos de C. Diego Rodríguez-Losada 1. //a) #include <stdio.h> main( ) { int x = 0, y = 0; //b) #include <stdio.

Plantillas: un mecanismo de polimorfismo

Ejemplo de la implementación del llenado de un arreglo de forma aleatoria

Capítulo. Cálculos con matrices

PRÁCTICA 1: INTRODUCCIÓN A LA ALGORÍTMICA BOLETIN DE PROBLEMAS RESUELTOS. (Curso 03-04)

Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia de la Computación

Curso 0 de Informática

Estructura de datos tipo vector.

Introduccion al Lenguaje C. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia

Creación de Funciones de Conducción

SISTEMAS DE ECUACIONES LINEALES

LABORATORIO 1 OPERACIONES DE ENTRADA Y SALIDA

Ejemplos de conversión de reales a enteros

Arrays y Cadenas en C

Mi primer proyecto en Dev-C++

SERIE DE EJERCICIOS 3

INSTRUCTIVO PARA EL SISTEMA DE REPORTE EN LINEA - SIREL

Prof. Dr. Paul Bustamante

Ejercicios Tema 3. Estructuras de Selección

Academia técnica de computación A.T.C.

Tema 7: Programación con Matlab

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO. Introducción FACULTAD DE INGENIERÍA. Ordenación

Tema 2. Software. Informática (1º Ingeniería Civil)

Matrices: Conceptos y Operaciones Básicas

Vectores y matrices. Fundamentos de Programación Fundamentos de Programación I

Comenzando con MATLAB

Matrices. Definiciones básicas de matrices. José de Jesús Angel Angel.

Estructuras de repetición hacer-mientras y repita hasta

Actividades de Divulgación del Centro Atómico Bariloche. Qué hay detrás de un programa de computadora? Daniela Arnica Pablo E. Argañaras.

Contenidos. Funciones (suplemento) Funciones. Justificación del uso de Funciones

Una breve introducción a Excel c

Examen Junio- Grupo A Lunes 17 de Junio - Programación en C++ Pág. 1

Apéndice A. Repaso de Matrices

Escuela Politécnica Superior de Ingeniería Departamento de Ingeniería Informática

Charla No 3: Fórmulas de mayor uso.

#include <stdio.h> /* Factorial de un número - versión 1- */

Unidad 5 Utilización de Excel para la solución de problemas de programación lineal

En cualquier caso, tampoco es demasiado importante el significado de la "B", si es que lo tiene, lo interesante realmente es el algoritmo.

Modulo 1 El lenguaje Java

ETS Caminos Santander. Curso Ejercicios de introducción a la programación.

Tema 2 Límites de Funciones

REPRESENTACIÓN DE UNA DISTRIBUCIÓN DE PROBABILIDAD DISCRETA

PESTAÑA DATOS - TABLAS EN EXCEL

Tema: Arreglos de Objetos en C++.

1. Ejemplo de clase : La clase Cuenta 2. Uso de la clase Cuenta. 3. Métodos y objetos receptores de mensajes (Importante)

APUNTES JAVA ARRAYS (ARREGLOS) Un arreglo es un grupo de posiciones de memoria contiguas. Todas las cuales tienen el mismo nombre y el mismo tipo.

Guía para realizar trabajos universitarios

Presentación. Programación I. Conceptos Avanzados de Programación. :: Prof. Yeniffer Peña


4. Se considera la función f(x) =. Se pide:

Curso Excel Básico - Intermedio

El lenguaje C. #define MAX LINEA 1000 /* maximo tamanio de linea de entrada */

Estructuras de Repetición Repita Mientras

Visor de presupuestos en Android

MANUAL DE CUOTA EN UNIDADES POR TERRITORIO

Introducción. Visual Basic para Aplicaciones (VBA) en Excel: aspectos elementales

1. Ecuaciones no lineales

Matrices Invertibles y Elementos de Álgebra Matricial

Lenguaje de Diseño Primer Cuatrimestre

Ejemplo: Resolvemos Sin solución. O siempre es positiva o siempre es negativa. Damos un valor cualquiera Siempre + D(f) =

6. VECTORES Y COORDENADAS

U.M.S.N.H. Manual De Operación Del Módulo Cuentas Por Cobrar /SIIA

Ejemplo: Apuesta? 100 PERA PERA MANZANA La casa gana!!! Apuesta? 300 FRUTILLA FRUTILLA FRUTILLA GANASTE 600!!! Apuesta? 0 Gracias por jugar!!!

Programación de Sistemas

Introducción al tipo de dato ARRAY

PARÁBOLA. 1) para la parte positiva: 2) para la parte negativa: 3) para la parte positiva: 4) para la parte negativa:

Para dudas, comentarios escribe a: C BASICO

LABORATORIO Nº 3 PRÁCTICA DE FUNCIONES EN MICROSOFT EXCEL

PLATAFORMA DE TRÁMITES Y SERVICIOS EN LÍNEA MARVIN SISTEMA DE GESTIÓN DOCUMENTAL GUÍA DE DILIGENCIAMIENTO

Transcripción:

******************************************************** PROGRAMACION APLICADA A LA INGENIERIA CIVIL OOCC GUIA Nº3 Ayudante: Rodrigo Torres Aguirre/2009 Compilador utilizado: Dev-C++ versión 4.9.9.2 ********************************************************* 1-Construya un programa en C que permita llenar un vector de números enteros de largo MAX con números aleatorios. Finalmente ordenarlos e indicar cuantas iteraciones fueron necesarias para lograrlo. #define max 6 //LLENAR EL VECTOR O ARREGLO DE FORMA MANUAL (para el ejercicio no es necesario) void llenar_vector(int V[max]){ int i; for(i=0;i<max;i++){ printf("[%d]=",i); scanf("%d",&v[i]); //LLENAR EL VECTOR 0 ARREGLO DE FORMA ALEATORIA void llenar_vector_aleatorio(int V[max]){ int i; for(i=0;i<max;i++){ V[i]=rand()%100+1; printf("[%d]",v[i]); //ORDENAR EL VECTOR ALEATORIO void ordenar(int A[max]){ int x,y,cont2=0,aux; for(x=0;x<max-1;x++){ for(y=x+1;y<max;y++){ if(a[x]>a[y]){ aux=a[x]; A[x]=A[y]; A[y]=aux; cont2=cont2+1; printf("el numero de iteraciones de intercambio es:%d\n",cont2); //MOSTRAR EL VECOTR O ARREGLO void mostrar_vector(int V[max]){ int i; for(i=0;i<max;i++){ printf("[%d]",v[i]); //PROGRAMA PRINCIPAL int A[max],B[max]; printf("*****************************************\n"); printf("llenado MANUAL Y ORDENAMIENTO\n"); llenar_vector(a); ordenar(a); mostrar_vector(a); printf("\n\n*****************************************\n"); printf("llenado AUTOMATICO Y ORDENAMIENTO\n");

llenar_vector_aleatorio(b); ordenar(b); mostrar_vector(b); 2-Construya un programa en C que permita llenar un vector de números reales de 7 elementos por medio del teclado. Finalmente copiar la mitad izquierda del vector en la derecha y mostrarlo por pantalla. #define L 7 //LLENDADO DEL VECTOR void llenar_vector(int V[L]){ int i; printf("[%d]=",i); scanf("%d",&v[i]); printf("\nvector Original\n"); printf("[%d]",v[i]); //COPIADO DE LA MITAD IZQUIERDA DEL VECTOR Y COLOCADO EN LA PARTE DERECHA void mitad_vector(int V[L]){ int i; for(i=0;i<(l-1)/2;i++){ V[((L-1)/2)+i+1]=V[i]; printf("[%d]",v[i]); int A[L]; printf("llene EL ARREGLO\n"); llenar_vector(a); printf("\n******************"); printf("\nel ARREGLO QUEDO\n"); mitad_vector(a); 3-Construya un programa en C que permita determinar cuál es el número que más veces se repite dentro de un vector de números enteros de largo 20. Los valores contenidos en el vector son ingresados por el usuario. #define L 20 //LLENADO DE LA MATRIZ void llenar_vector(int V[L]){ int i; printf("[%d]=",i); scanf("%d",&v[i]);

printf("[%d]",v[i]); //BUSCANDO EL NUMERO void numero(int V[L]){ int i,j,b[l],aux,maximo,c[l]; B[i]=1; for(j=i+1;j<l;j++){ if(v[i]==v[j]){ B[i]=B[i]+1; C[i]=V[i]; printf("\nel numero %d se repite %d veces",v[i],b[i]); maximo=b[0]; if(b[i]>maximo){ maximo=b[i]; aux=c[i]; printf("\n\n\nel numero que mas se repite es el %d ",aux); int A[L]; printf("llenado MANUAL\n"); llenar_vector(a); numero(a); 4-Construya un programa en C que permita llenar una matriz para luego ordenarla en forma ascendente (menor a mayor) y finalmente determinar cuantas iteraciones fueron necesarias para lograr el orden. #define F 3 #define C 3 //LLENADO DE LA MATRIZ void llenar_matriz(int M[F][C]){ M[i][j]=rand()%15+1; printf("[%d]",m[i][j]); //ORDENAR LA MATRIZ DE MENOR A MAYOR void ordenar(int M[F][C]){

int x,y,i,j,cont=0,aux; for(x=i;x<i+1;x++){ for(y=0;y<c;y++){ if(m[i][j]<m[x][y]){ cont++; aux=m[i][j]; M[i][j]=M[x][y]; M[x][y]=aux; printf("[%d]",m[i][j]); printf("***********************************************"); printf("\n\nel NUMERO DE ITERACIONES FUERON:%d",cont); int A[F][C]; printf("ingrese LOS NUMEROS DE LA MATRIZ"); printf("\nla MATRIZ DE ORDENADA ES\n"); ordenar(a); 5-Construya un programa en C que permita contar cuantos números primos existen dentro de una matriz de 3 x 5. Los valores contenidos en la matriz deben ser generados al azar. #define F 3 #define C 5 //LLENADO DE LA MATRIZ void llenar_matriz(int M[F][C]){ M[i][j]=rand()%15+1; printf("\nla MATRIZ ES\n"); printf("[%d]",m[i][j]); int primos(int M[F][C]){ int i,j,k,primos=0,cont; cont=0;

for(k=1;k<=m[i][j];k++){ if(m[i][j]%k==0){ cont=cont+1; if(cont==2){ primos++; return primos; int A[F][C]; printf("\nla CANTIDAD DE NUMEROS PRIMOS EN LA MATRIZ ES:%d",primos(A)); 6-Construya un programa en C que permita llenar una matriz de números enteros de 4 x 5. Finalmente almacenar los primeros n números positivos en un vector de largo 20. Debe validar que n sea como máximo 20. Luego mostrar el contenido del vector. #define F 4 #define C 5 #define L 20 //LLENADO DE LA MATRIZ void llenar_matriz(int M[F][C]){ scanf("%d",&m[i][j]); printf("\nla MATRIZ ES\n"); printf("[%d]",m[i][j]); //ALMACENAR LOS PRIMEROS N NUMEROS POSITIVOS EN UN ARREGLO void almacenar(int M[F][C]){ int i,j,v[l],cont=0; printf("\nel VECTOR ES\n"); if(m[i][j]>0){ cont++; if(cont<l+1){ V[j]=M[i][j]; printf("[%d]",v[j]);

int A[F][C]; printf("ingrese LOS NUMEROS DE LA MATRIZ\n"); almacenar(a); 7-Construya un programa en C que permita llenar una matriz de N x M y luego copiar la mitad izquierda de la misma sobre su mitad derecha. Simulando un espejo en su mitad. //Los comentarios referidos a "cambios", es para cuando el espejo esta de //forma horizontal (en nuestro caso es vertical) #define N 3 #define M 5 //LLENADO DE LA MATRIZ void llenar_matriz(int A[N][M]){ scanf("%d",&a[i][j]); //MATRIZ ESPEJO MITAD VERTICAL void espejo(int A[N][M]){ //MATRIZ CON N PAR if(m%2==0){//cambiar M POR N,PARA QUE LA MITAD SUPERIOR SE REFLEJE // EN LA INFERIOR //CAMBIAR N POR (N+1)/2 for(j=0;j<(m+1)/2;j++){//(m+1)/2 POR M A[i][M-1-j]=A[i][j];//A[I][M-1-J] POR A[N-1-I][J] printf("\nla MATRIZ ESPEJO\n"); //MATRIZ CON N IMPAR (ESTA ES OPCIONAL,SI SE BORRAR EL IF DEL M PAR, EL //PROGRAMA FUNCIONA IGUAL if(m%2==1){//cambiar M POR N,PARA QUE LA MITAD SUPERIOR SE REFLEJE // EN LA INFERIOR //CAMBIAR N POR (N-1)/2 for(j=0;j<(m-1)/2;j++){//(m-1)/2 POR M A[i][M-1-j]=A[i][j];//A[i][M-1-j] POR A[N-1-I][J] printf("\nla MATRIZ ESPEJO\n");

int A[N][M]; printf("ingrese LOS NUMEROS DE LA MATRIZ\n"); espejo(a); 8-Construya un programa en C que permita invertir todo el contenido de una matriz de caracteres de orden N x N fila por fila. El contenido de la matriz es ingresado por el usuario. #define N 4 //LLENADO DE LA MATRIZ void llenar_matriz(int A[N][N]){ scanf("%d",&a[i][j]); //INVERTIR TODA LA MATRIZ POR FILAS void invertir_matriz(int A[N][N]){ int i,j,aux1,aux2; for(i=0;i<(n+1)/2;i++){ aux1=a[i][j]; aux2=a[n-1-i][j]; A[N-1-i][j]=aux1; A[i][j]=aux2; printf("\nla MATRIZ QUEDA\n"); int A[N][N];

printf("ingrese LOS NUMEROS DE LA MATRIZ\n"); invertir_matriz(a); 9-Construya un programa en C que permita ingresar la siguiente información de 30 alumnos. Nombre, Promedio, Carrera. Finalmente mostrar el nombre de todos los reprobados y Carrera de todos los aprobados en el mismo orden solicitado. #define L 30 //no se ejecuta como corresponde, es mejor hacerlo por estructuras //INGRESAR LOS DATOS(NOMBRE, PROMEDIO,CARRERA) void ingresar_datos(int V[L]){ char nombre[l],carrera[l]; float promedio[l],x; int i; printf("ingrese NOMBRE,PROMEDIO Y CARRERA DEL ALUMNO\n"); printf("nombre:"); scanf("%s",&nombre[i]); printf("promedio:"); scanf("%f",&promedio[i]); printf("carrera:"); scanf("%s",&carrera[i]); printf("\nlos alumnos reprobados son:"); if(promedio[i]<4){ printf("\n[%s]",nombre[i]); printf("\nlos listado de carreras aprobadas son:"); if(promedio[i]>=4){ printf("\n[%s]",carrera[i]); int A[L]; ingresar_datos(a); 10-Construya un programa en C que permita resolver lo siguiente considerando una matriz de números enteros de MAX x MAX. Para cada M(i,j): Si M (i, j) Es par --> M(i,j)=M(i,j)*3 Es Impar--> M(i,j)=M(i,j)*2 #define max 3 //LLENAR MATRIZ void llenar_matriz(int A[max][max]){ for(i=0;i<max;i++){ for(j=0;j<max;j++){ scanf("%d",&a[i][j]);

for(i=0;i<max;i++){ for(j=0;j<max;j++){ //MULTIPLICAR CIERTOS COEFICIENTES POR UN ESCALAR void escalar(int A[max][max]){ for(i=0;i<max;i++){ for(j=0;j<max;j++){ if(a[i][j]%2==0){ A[i][j]=A[i][j]*3; if(a[i][j]%2==1){ A[i][j]=A[i][j]*2; printf("\nla MATRIZ MODIFICADA\n"); for(i=0;i<max;i++){ for(j=0;j<max;j++){ int A[max][max]; printf("\ningrese LOS NUMEROS\n"); escalar(a); 11-Determine si una matriz de números enteros llenada por el usuario es una matriz Nula. Una matriz es nula si todos sus elementos son cero. #define N 3 #define M 3 //LLENAR MATRIZ void llenar_matriz(int A[N][M]){ scanf("%d",&a[i][j]);

//VERIFICAR SI LA MATRIZ LLENADA ES NULA void verificar(int A[N][M]){ int i,j,cont=0; if(a[i][j]==0){ cont++; if(cont==n*m){ printf("la MATRIZ ES UNA MATRIZ NULA"); else{ printf("la MATRIZ ES UNA MATRIZ NO NULA"); int A[N][M]; printf("\ningrese LOS NUMEROS\n"); verificar(a); 12-Construya un programa en C que muestre por pantalla la matriz transpuesta de una ingresada por el usuario. #define N 3 #define M 3 //MATRIZ TRANSPUESTA void transpuesta(int A[N][M]){ scanf("%d",&a[i][j]); printf("\nla MATRIZ TRANSPUESTA\n"); int A[N][M];printf("INGRESE LOS NUMEROS\n"); transpuesta(a);

13-Se tiene una matriz cuadrada de orden N, compuesta por 1 s y 0 s, la cual representa una letra escaneada desde un texto, un 1 en la matriz representa escritura y un 0, no escritura. Se pide codifique una función en C que permita determinar si la letra representada en la matriz es una H. #define N 3 //LLENADO DEL VECTOR void llenar_matriz(int A[N][N]){ scanf("%d",&a[i][j]); //VERIFICACION DE QUE LA MATRIZ FORMA LA LETRA H void verificar(int A[N][N]){ int i,j,cont1=0,cont2=0,cont3=0,cont4=0,unos,ceros; if(a[i][0]==1 && A[i][N-1]==1){ cont1=cont1+2; for(j=1;j<n-1;j++){ if(a[(n-1)/2][j]==1){ cont2=cont2+1; for(i=0;i<(n-1)/2;i++){ for(j=1;j<n-1;j++){ if(a[i][j]==0){ cont3=cont3+1; for(i=(n+1)/2;i<=n;i++){ for(j=1;j<n-1;j++){ if(a[i][j]==0){ cont4=cont4+1; unos=cont1+cont2; ceros=cont3+cont4; if(unos==(3*n-2) && ceros==(n*n-3*n+2)){ printf("\nla MATRIZ FORMA LA LETRA H"); else{ printf("\nla MATRIZ --NO-- FORMA LA LETRA H");

int A[N][N]; printf("llene LA MATRIZ\n"); verificar(a); 14-Una agencia de venta de vehículos distribuye 15 modelos diferentes y tiene en su plantilla 10 vendedores. Se desea un programa que escriba un informe mensual de las ventas por vendedor y modelo, así como el número de automóviles vendidos por cada vendedor y el número total de cada modelo vendido por todos los vendedores. Asimismo, para entregar el premio al mejor vendedor, se necesita saber cuál es el vendedor que más coches ha vendido. /*Este programa no se ejecuta como corresponde... de todas formas lo adjunto, para dar una idea aproximada de como deberia ser. Este tipo de problemas es mejor resolverlo por estructuras.*/ int i,a,x,cont,suma,total,maximo,; int Mvendido,ventas[10],Modelos[15],Autos[50]; char b,vendedor[10],mejor; cont=0; Total=0; for(x=1;x<=15;x++){ Modelos[x]=x; for(x=1;x<=15;x++){ Autos[x]=0; for(i=0;i<10;i++){ printf("\nnombre del vendedor:");scanf("&s",&vendedor[i]); printf("\ncuantos autos fueron vendidos por el?:");scanf("%d",&ventas[i]); a=ventas[i]; Total=Total+a; if(a>0){ printf("\nmodelo vendido(entre 1 y 15):"); scanf("%d",&mvendido); for(x=1;x<=15;x++){ if(modelos[x]==mvendido){ Autos[x]=Autos[x]+1; maximo=ventas[0]; for(i=0;i<10;i++){ if(ventas[i]>maximo){ maximo=ventas[i]; mejor=vendedor[i]; for(i=0;i<10;i++){ b=vendedor[i]; a=ventas[i]; printf("\nnombre del vendedor: %s",b); printf("\nautos vendidos por el: %d",a);

printf("\n\nla cantidad de autos vendidos son %d",total); printf("\nel premio al mejor vendedor es para %s",mejor); 15-Una matriz cuadrada de orden N es diagonal dominante si cumple que >,, =1,2,3. Escriba una función que permita imprimir un mensaje adecuado si una matriz dada como parámetro es diagonal dominante o no. #define N 3 //LLENAR MATRIZ void llenar_matriz(int A[N][N]){ scanf("%d",&a[i][j]); //VERIFICAR SI LA MATRIZ ES DIAGONAL DOMINANTE int diagonal_dominante(int A[N][N]){ int i,j,suma,cont; cont=0; suma=0; if(i!=j){ suma=suma+abs(a[i][j]); if(abs(a[i][i]) > suma){ cont++; if(cont==n){ printf("\nla MATRIZ ES DIAGONAL DOMINANTE"); else{ printf("\nla MATRIZ NO ES DIAGONAL DOMINANTE"); int A[N][N]; printf("ingrese LOS NUMEROS\n"); diagonal_dominante(a);

16-Cuando el 80% o más de los elementos de una matriz cuadrada de orden N es nulo, entonces la matriz se denomina esparse (o matriz rala ). Escriba una función que permita retornar un 1 si una matriz dada es esparse, un 0 sino. #define N 3 //LLENADO DEL VECTOR void llenar_matriz(int A[N][N]){ int i,j,suma=0; scanf("%d",&a[i][j]); //VERIFICACION SI UNA MATRIZ ES RALA O NO int matriz_rala(int A[N][N]){ int i,j,cont,x,p; float y; cont=0; if(a[i][j]==0){ cont=cont+1; x=(int)n*n*0.8; y=(float)n*n*0.8; if((y-x)<0.5){ p=x; else{ p=x+1; if(cont>=p){ printf("\nla MATRIZ ES ESPARCE O RALA"); return 1; else if(cont<p){ printf("\nla MATRIZ--NO--ES ESPARCE O RALA"); return 0; int A[N][N]; printf("llene LA MATRIZ\n"); printf("\n\nla MATRIZ ES %d [1=esparse,0=no esparse]",matriz_rala(a));

17-Dada una matriz A, =, A es invertible ssi det(a) 0. Si existe, se puede calcular como =. Escriba una función que permita calcular y mostrar ( ) la inversa de una matriz si es que ella existe, o un mensaje apropiado en caso de no existir. #define N 2 //LLENADO DEL VECTOR void llenar_matriz(int A[N][N]){ int i,j,suma=0; scanf("%d",&a[i][j]); //SACAR EL DETERMINANTE DE LA MATRIZ 2X2 float determinante(int A[N][N]){ int i,j,det; det=a[0][0]*a[1][1]-a[0][1]*a[1][0]; return det; //INVERTIR LA MATRIZ void inversa(int A[N][N]){ float B[N][N]; if(determinante(a)!=0){ B[0][0]=A[1][1]/determinante(A); B[0][1]=-1*A[0][1]/determinante(A); B[1][0]=-1*A[1][0]/determinante(A); B[1][1]=A[0][0]/determinante(A); printf("[%f]",b[i][j]); if(determinante(a)==0){ printf("la MATRIZ INVERSA NO EXISTE"); int A[N][N]; printf("llene LA MATRIZ\n"); determinante(a); printf("\nla MATRIZ INVERSA ES\n"); inversa(a);