Sei sulla pagina 1di 4

UNIVERSIDAD NACIONAL AUTONOMA DE NICARAGUA UNAN-LEON

HACER
CEROS.

UN PROGRAMA EN

QUE LEA UNA MATRIZ DE

FILAS Y

COLUMNAS Y

QUE ALMACENE EN LA DIAGONAL PRINCIPAL UNOS Y EN LAS DEMS POSICIONES

#include<stdio.h> #include<stdlib.h> #define MAXF 10 #define MAXC 10 void main() { int matriz[MAXF][MAXC],f,c,nfil,ncol; printf("Introduzca el numero de filas: "); scanf("%d",&nfil); printf("Introduzca el numero de columnas: "); scanf("%d",&ncol); for(f=0;f<nfil;f++) { for(c=0;c<ncol;c++) { if(f==c) matriz[f][c]=1; else matriz[f][c]=0;
} }

printf("\n***DATOS DE LA MATRIZ INTRODUCIDA***\n"); for(f=0;f<nfil;f++) { for(c=0;c<ncol;c++) { printf(" %d ",matriz[f][c]);


}

printf("\n");
} }

UNIVERSIDAD NACIONAL AUTONOMA DE NICARAGUA UNAN-LEON

DISEAR UN PROGRAMA EN C QUE LEA UNA MATRIZ DE 3*3. SUMAR LAS COLUMNAS E IMPRIMIR QUE COLUMNA TUVO LA MXIMA SUMA Y LA SUMA DE ESA COLUMNA.
//Matriz de 3*3 que Suma las columnas. #include<stdio.h> #include<stdlib.h> void main() { int matriz[3][3],sumac,f,c,mayor=0,numc; for(f=0;f<3;f++) { for(c=0;c<3;c++) { printf("Elemento[%d][%d]: ",f+1,c+1); scanf("%d",&matriz[f][c]); } } printf("\n***DATOS DE LA MATRIZ INTRODUCIDA***\n"); for(f=0;f<3;f++) { for(c=0;c<3;c++) { printf(" %d ",matriz[f][c]); } printf("\n"); } for(c=0;c<3;c++) { sumac=0; for(f=0;f<3;f++) { sumac+=matriz[f][c]; } printf("\nSUMA COLUMNA[%d]:%d\n",c+1,sumac); if(sumac>mayor) { mayor=sumac; numc=c; } } printf("\nLa columna con mayor suma es la numero: %d y su valor es: %d\n\n3",numc+1,mayor); }

ELABORAR

UN PROGRAMA QUE ORDENE E IMPRIMA EN FORMA ASCENDENTE UN

LISTADO DE VALORES INTRODUCIDOS POR TECLADO USANDO NOTACIN PUNTERO.

UNIVERSIDAD NACIONAL AUTONOMA DE NICARAGUA UNAN-LEON

#include <iostream.h> #include <conio.h> //para getch() #define NUM 10 void main(void){ int dato[NUM]; bool ord=falso; char ch; while(verdadero){ cout << "\nOrdenar descendente (D) o Ascendente (A)?" ; cout << flush; ch = getch(); if ( ch=='a' || ch=='A' ) { ord=true; break; } if ( ch=='d' || ch=='D') { ord=false; break; } } cout << endl; for (int i=0;i<NUM;i++){ cout << "dame el dato[" << i << "]:"; cin >> dato[i]; } for (i=0;i<NUM-1;i++){ for (int j=i+1;j<NUM;j++){ int a=dato[i]; int b=dato[j]; if ( a < b && !ord) { dato[i] = b; dato[j] = a; } if ( a > b && ord){ //Ascend dato[i] = b; dato[j] = a; } } } cout << "\nOrden elegido: " ; ord? cout << "Ascend" : cout << "Descend"; //operador ternario for ( i=0;i<NUM;i++){ cout << "\ndato[" << i << "]:" << dato[i]; } cout << endl; }

REALICE UN PROGRAMA QUE ORDENE ALFABTICAMENTE DIEZ NOMBRES COMPLETOS COMPUESTOS DE PRIMER APELLIDO, SEGUNDO APELLIDO Y NOMBRE. SE NECESITA UNA MATRIZ DE 10 FILAS, PERO DE NMERO DE COLUMNAS VARIABLE. EL PROCEDIMIENTO ES SENCILLO: SE LEE EL NOMBRE COMPLETO Y SE VE CUNTO OCUPA Y ENTONCES SE RESERVA EL ESPACIO DE MEMORIA NECESARIO. EL NOMBRE LEDO SE ALMACENA TEMPORALMENTE EN UNA VARIABLE ARRAY AUXILIAR QUE

UNIVERSIDAD NACIONAL AUTONOMA DE NICARAGUA UNAN-LEON


PERMITIR ALMACENAR NOMBRES COMPLETOS DE HASTA

50 CARACTERES. INVESTIGUE UN MTODO

DE ORDENACIN PARA PODER ORDENAR NOMBRES COMPLETOS.

#include <stdio.h> #include <string.h> #include <stdlib.h> #define Max 15 int main() { char *nombres[Max]; char nombre [25]; char *letra; int i,j,n =sizeof(nombres)/sizeof (char*); for(i=0;i<n;i++) { system("cls"); printf("\n\nNombre %d:",i+1); fgets(nombre,sizeof(nombre),stdin); letra=strchr(nombre,'\n'); if(letra!=NULL) { *letra='\0'; nombres[i]=strdup(nombre); } } for(i=0;i<n;i++) for(j=n-1;j>0;j--) if(strcmp(nombres[j],nombres[j-1])<0) { letra= nombres[j]; nombres[j]=nombres[j-1]; nombres[j-1]=letra; } for(i=0;i<n;i++) { printf("%d: %s\n",i+1,nombres[i]); } system("pause"); return EXIT_SUCCESS; }

Potrebbero piacerti anche