1.-/*Programa que dibuja un arbol*/
#include<stdio.h>
main()
{
int filas,columnas,blancos;/*Variables*/
int altura;/*Dato*/
/*Condicion de inicializacion*/
do
{
printf("Introduzca la altura del arbol:");
scanf("%d",&altura);
}
while(!(altura>0));
/*Desarrollo*/
for(filas=1; filas<=altura; filas++)
{
for(blancos=1; blancos<=altura-filas; blancos++)
{
/*Impresion de espacios inverso de las filas*/
printf(" ");
}
for(columnas=1; columnas<=2*filas-1; columnas++)
{
/*impresion de * proporcional a las filas*/
printf("*");
}
/*Terminacion de la fila*/
printf("\n");
}
return 0;
}
2.-
2.-
#include<stdio.h>
main( )
{
int N;/*Numero de datos*/
int NUM;/*Dato actual*/
int I;/*Contador*/
long SUM;/*Suma de los numeros introducidos*/
double PROD;/*Producto de los introducidos*/
printf("Numero de datos:");
scanf("%d",&N);
SUM=0;
PROD=1;
I=1;
/*Introduccion de los datos bajo condicion inicial*/
while(I<=N)
{
printf("%d.numero:",I);
scanf("%d",&NUM);
SUM+=NUM;
PROD*=NUM;
I++;
}
/*Operaciones y entrega de resultados*/
printf("La suma de los %d numeros es %ld\n",N,SUM);
printf("El producto de los %d numeros es %.0f\n",N,PROD);
printf("El promedio de los %d numeros es %.4f\n",N,(float)SUM/N);
return 0;
}
3)Sumay producto de un numero introducido por teclado
#include<stdio.h>
main( )
{
int N;/*Numero de datos*/
int NUM;/*Dato actual*/
int I;/*Contador*/
long SUM;/*Suma de los numeros introducidos*/
double PROD;/*Producto de los introducidos*/
printf("Numero de datos:");
scanf("%d",&N);
SUM=0;
PROD=1;
I=1;
do
{
printf("%d.numero:",I);
scanf("%d",&NUM);
SUM+=NUM;
PROD*=NUM;
I++;
}
while(I<=N);
printf("La suma de los %d numeros es %ld\n",N,SUM);
printf("El producto de los %d numeros es %.0f\n",N,PROD);
printf("El promedio de los %d numeros es %.4f\n",N,(float)SUM/N);
return 0;
}
4)area de un triangulo
#include<math.h>
main( )
{
int A,B,C;
double AUX;
/*introducir los lados del triangulo*/
printf("Introduzca los 3 lados del triangulo (A,B,C)\n");
scanf("%i %i %i",&A,&B,&C);
/*despliegue los lados del triangulo*/
printf("A=%i\tB=%i\tC=%i\n",A,B,C);
/*determinar si el triangulo ingresado existe*/
if(A+B>C&&A+C>B&&B+C>A)
{
/*Para cuando el triangulo existe*/
/*operaciones*/
AUX=(A+B+C);
AUX=AUX/2;
AUX=AUX*(AUX-A)*(AUX-B)*(AUX-C);
AUX=sqrt(AUX);
/*despliegue de los resultados*/
printf("El area del triangulo es %lf\n",AUX);
return 0;
}
else
{
/*Para cuando el triangulo no extiste*/
printf("Los datos ingresados no corresponden a un triangulo\n");
return 0;
}
5) realizar unprograma que muestresi es onoun año bisiesto
#include<stdio.h>
int bisiesto (int x)
{
if(x %400 ==0)
return (1);
else if(x % 100 ==0)
return(0);
else
return (x % 4 ==0);
}
int main()
{
int x;
puts("Introduzca año entero\n");
scanf("%d",&x);
if(bisiesto(x))
printf("%d es bisiesto\n",x);
else
printf("%d no es un año bisiesto \n",x);
return 0;
}
6)realizarun programa que muestre el tamaño de unvector formado por dos puntos
#include<math.h>
main( )
{
int X,Y,x,y;
double RES;
/*introducir el primer punto*/
printf("Introduzca el primer punto X Y:");
scanf("%i %i",&X,&Y);
/*despliegue del primer punto*/
printf("X=%i\tY=%i\n",X,Y);
/*Introducir el segundo punto*/
printf("Introduzca el segundo punto x y:");
scanf("%i %i",&x,&y);
/*despliegue del segundo punto*/
printf("x=%i\ty=%i\n",x,y);
/*operaciones*/
RES=pow(X-x,2)+pow(Y-y,2);
RES=sqrt(RES);
/*despliegue de los resultados*/
printf("La distancia entre P1 y P2 es %lf\n",RES);
return 0;
}
7)realizarunprograma quecalcule la traza de una matriz
#include<stdio.h>
main()
{
/*Declaraciones*/
int T[50][50]; /*Tabla dada*/
int L,C; /*Dimensiones*/
int I,J; /*Indices actuales*/
long SUM; /*Suma de los elementos_tipo long por la talla del resulatdo*/
/*Introducir los datos*/
printf("Numero de lineas(Max.50):");
scanf("%d",&L);
printf("Numero de columnas (Max.50):");
scanf("%d",&C);
for(I=0;I<L;I++)
for(J=0;J<C;J++)
{
printf("Elemento [%d][%d]:",I,J);
scanf("%d",&T[I][J]);
}
/*Mostrar la tabla*/
printf("Tabla dada:\n");
for(I=0;I<L;I++)
{
for(J=0;J<C;J++)
printf("%7d",T[I][J]);
printf("\n");
}
/*Calcular la suma*/
for(SUM=0,I=0;I<L;I++)
for(J=0;J<C;J++)
SUM +=T[I][J];
/*Mostrar el resultado*/
printf("La suma de los elementos es :%ld\n",SUM);
return 0;
}
8)
/*Programa que calcula el maximo comun divisor de dos numeros
introducidos desde el teclado*/
#include<stdio.h>
main()
{
/*Inicializacion de las variables*/
int A,B,Res;
int Mayor,Menor;
do
/*Condicion inicial*/
{
printf("Introduzca el primer numero entero(N>0):");
scanf("%d",&A);
}
while(A<=0);
do
{
printf("Introduzca el segundo numero entero(N>0):");
scanf("%d",&B);
}
/*Detectar cual es el mayor*/
while(B<=0);
if(A>B)
{
Mayor=A;
Menor=B;
}
else
{
Mayor=B;
Menor=A;
}
/*Operaciones*/
printf("MAYOR=%d, MENOR=%d\n",Mayor,Menor);
Res=Mayor%Menor;
/*Condicion de operacion*/
while(!(Res==0))
{
Mayor=Menor;
Menor=Res;
Res=Mayor%Menor;
}
/*Impresion de resultados*/
printf("El maximo comun divisor es %d\n",Menor);
return 0;
}
9) programa que enseñalosdatos negativos y positivos introducidos en una tabla
#include<stdio.h>
main( )
{
/*Declaraciones*/
/*Tablas y dimensiones*/
int T[50],TPOS[50],TNEG[50];
int N,NPOS,NNEG;
int I; /*Indice Actual*/
/*Introduccion de datos*/
printf("Dimension de la tabla(MAX.50):");
scanf("%d",&N);
for(I=0;I<N;I++)
{
printf("El elemento %d:",I);
scanf("%d",&T[I]);
}
/*Desplegar la tabla*/
printf("Tabla dada:\n");
for(I=0;I<N;I++)
printf("%d",T[I]);
printf("\n");
/*Indicar dimensiones Tpos y Tneg*/
NPOS=0;
NNEG=0;
/*Transferir los datos*/
for(I=0;I<N;I++)
{
if(T[I]>0)
{
TPOS[NPOS]=T[I];
NPOS++;
}
if(T[I]<0)
{
TNEG[NNEG]=T[I];
NNEG++;
}
}
/*Desplegar los resultados*/
printf("Tabla TPOS:\n");
for(I=0;I<NPOS;I++)
printf("%d",TPOS[I]);
printf("\n");
printf("Tabla TNEG:\n");
for(I=0;I<NNEG;I++)
printf("%d",TNEG[I]);
printf("\n");
return 0;
}
9)
/*Programa que calcula el producto escalar de dos vectores de dimension N*/
#include<stdio.h>
main()
{
/*Declaraciones*/
float T[50],P[50];/*Vectores dados*/
int D;/*Dimension del vector*/
int I;/*Indice actual*/
float PROD=1,SUM=0;/*Variables auxiliares*/
/*Condicion de ingreso de dimension del vector*/
do
{
printf("Introduzca la dimension de los vectores (MAX:50):");
scanf("%d",&D);
}
while(D<=0);
/*Introduccion de los elementos de los vectores*/
printf("Introduzca los elementos del primer vector:\n");
for(I=0;D>I;I++)
{
printf("Introduzca el %d elemento:",I);
scanf("%f",&T[I]);
}
printf("Introduzca los elementos del segundo vector:\n");
for(I=0;D>I;I++)
{
printf("Introduzca el %d elemento:",I);
scanf("%f",&P[I]);
}
/*Muestra de los datos introducidos*/
printf("El producto vectorial de:(");
for(I=0;D>I;I++)
{
printf("% .1f",T[I]);
}
printf(")*(");
for(I=0;D>I;I++)
{
printf("% .1f",P[I]);
}
printf(") ");
/*Realizacion de los calculos*/
for(I=0;D>I;I++)
{
PROD=T[I]*P[I];
SUM+=PROD;
}
/*Presentacion de la respuesta*/
printf(" es %.2lf:\n",SUM);
return 0;
}
10) programa que calcula las raices reales de un polinomio de segundo grado
#include<math.h>
main( )
{
int A,B,C;
double D,AUX,RES,RES1;
/*Para la forma Ax2+Bx+C*/
printf("introducir los coeficientes de la ecuacion de segundo grado:");
scanf("%i %i %i",&A,&B,&C);
/*Condicion inicial*/
if(!(A>0&&B>0&&C>0))
{
printf("todos los coeficientes no pueden ser 0\n");
return 0;
}
else
{
/*definiendo el discriminante*/
D=((pow(B,2))-4*A*C);
{
if(D>0)
{
AUX=sqrt(D);
RES=(-B+AUX);
RES=RES/(2*A);
RES1=(-B-AUX);
RES1=RES1/(2*A);
printf("Las raices reales de la ecuacion de segundo grado son %lf %lf\n",RES,RES1);
}
else if(D=0)
{
RES=((-B)/(2*A));
printf("La ecuacion de segundo grado solo tiene una raiz real y es %lf\n",RES);
}
else
printf("La ecuacion de segundo grado no tiene raices reales\n");
return 0;
}
11) calcular la resistencia equivalente de un circuito
#include<math.h>
main( )
{
double R1,R2,R3,AUX,AUX1;
/*introducir las variables*/
printf("Introduzca las resistencias parciales (R1,R2,R3)\n:");
scanf("%lf %lf %lf",&R1,&R2,&R3);
/*dezpliegue de los datos*/
printf("R1=%lf\tR2=%lf\tR3=%lf\n",R1,R2,R3);
/*Cálculo de las resintecias en serie*/
AUX=R1+R2+R3;
/*Desplegar el resultado de las resistencias en serie*/
printf("La resistencia equivalente en serie es %lf\n",AUX);
AUX=R1*R2*R3;
AUX1=R1*R2+R1*R3+R2*R3;
AUX=AUX/AUX1;
printf("La resistencia equivalente en paralelo es %lf\n",AUX);
return 0;
}
12) programa que despliege la serie polinomial de tailor de valor ½
#include<stdio.h>
main( )
{
int N;/*Numero de terminos*/
int I;/*El contador*/
float SUMA;/*tipo float para precision del resultado*/
do
{
printf("Numero de terminos:");
scanf("%d",&N);
}
while(N<1);
for(SUMA=0.0,I=1;I<=N;I++)
SUMA+=(float)1/I;
printf("La suma de los %d primeros terminos es %f\n",N,SUMA);
return 0;
}
13)
/*Programa que muestre una matriz (MAX:50x50) que muestra la suma de los elementos de cada fila con cada columna*/
#include<stdio.h>
main()
{
int T[50][50];/*Tabla dada*/
int L,C;/*Dimensiones de la tabla*/
int I,J;/*Indices actuales*/
int K,H;/*Indices auxiliares*/
long SUML,SUMC,SUM;/*Suma de los elementos tipo Long*/
SUML=0;/*Inicializacion*/
SUMC=0;
SUM=0;
/*Introduccion de los datos de la tabla*/
printf("Introduzca el numero de filas:");
scanf("%d",&L);
printf("Introduzca el numero de columnas:");
scanf("%d",&C);
/*Introduccion de los elementos*/
for(I=0;L>I;I++)
for(J=0;C>J;J++)
{
printf("Introduzca el elemento T[%d][%d]:",I,J);
scanf("%d",&T[I][J]);
}
/*Presentacion de la tabla*/
printf("La tabla dada es:\n");
for(I=0;L>I;I++)
{
for(J=0;C>J;J++)
printf("% d",T[I][J]);
printf("\n");
}
/*Suma de todos los elementos*/
for(I=0;L>I;I++)
for(J=0;C>J;J++)
SUM+=T[I][J];
printf("La suma total de los elementos de la matriz es:%ld\n",SUM);
/*Suma de las filas una a una*/
for(K=0;L>K;K++)
{
for(I=0,SUML=0;C>I;I++)
{
SUML+=T[K][I];
}
printf("La suma de los elementos de la %d fila es:%ld\n",K,SUML);
}
/*Suma de las columnas una a una*/
for(H=0;C>H;H++)
{
for(J=0,SUMC=0;L>J;J++)
{
SUMC+=T[J][H];
}
printf("La suma de los elementos de la %d columna es:%ld\n",H,SUMC);
}
return 0;
}
14)
/*Programa que calcula el valor de X de un polinomio introduciendo
los coeficientes*/
#include<stdio.h>
main()
{
/*Inicializacion de las variables*/
int I,COEF,G;
float EVAL,AUX;
I=0;
/*Introduccion de los datos de la ecuacion */
printf("Introduzca el grado del polinomio:");
scanf("%d",&G);
printf("Introduzca el numero al que sera evaluada la expresion:");
scanf("%f",&EVAL);
/*Condicion de ingreso de las componentes P(x)=A_N X^N+B_(N-1) X^(N-1)+A_1 X+A_0*/
do
{
printf("Introduzca el%d coeficiente",I+1);
scanf("%d",&COEF);
if(I==0)
{
AUX=COEF*EVAL;
}
else if(I)
{
AUX=COEF+AUX;
AUX=AUX*EVAL;
}
I++;
}
while(!(I==G+1));
/*Impresion del resultado*/
printf("La respuesta es = %f\n",(float)AUX/EVAL);
return 0;
}
14) realizar un programa que transpote matrices(matriz transpuesta)
#include<stdio.h>
main()
{
/*Declaraciones*/
int M[10][10];/*Matriz*/
int V[100]; /*Vector*/
int L,C; /*Dimensiones*/
int I,J; /*Indices actuales*/
/*Introducir datos*/
printf("Numero de lineas (max:10):");
scanf("%d",&L);
printf("Numero de columnas (max:10):");
scanf("%d",&C);
for(I=0;I<L;I++)
for(J=0;J<C;J++)
{
printf("Elemento [%d][%d]:",I,J);
scanf("%d",&M[I][J]);
}
/*Desplegar la matriz*/
printf("Matriz dada:\n");
for(I=0;I<L;I++)
{
for(J=0;J<C;J++)
printf("%7d",M[I][J]);
printf("\n");
}
/*Transferencia de los elementos linea por linea*/
for(I=0;I<L;I++)
for(J=0;J<C;J++)
V[I*C+J]=M[I][J];
/*Deslegar el resltado*/
printf("Vector resultante:");
for(I=0;I<L*C;I++)
printf("% d",V[I]);
printf("\n");
return 0;
}
No hay comentarios:
Publicar un comentario