Está en la página 1de 6

Evidencia de aprendizaje.

Programacin de algoritmos
matemticos

1. Escribe y ejecuta los siguientes programas en C:
a) El programa ms corto posible (no ace nada). !Cuntos caracteres
contiene"
Tuene 8 caracteres
main(){}
b) #n programa $ue despliegue el mensaje% &'ola% mundo.( (incluyendo la
diagonal invertida y las comillas).
#include <stdio.h>
void main(){
print) ("%c%s%c\n",'\\',"Hoa, mundo.",'"')!
}
c) #n programa $ue despliegue el mensaje &'ola% mundo.( (incluyendo la
diagonal invertida y las comillas) *+ veces.
#include <stdio.h>
void main(){
int i"#!
)or (i"#! i<"$%! i&&){
print) ("%c%s%c\n",'\\',"Hoa, mundo.",'"')!
}
}
'e des(e)ar* en (antaa+
\Hoa, mundo."
$% veces
,. -ise.a el algoritmo% y luego desarrolla y ejecuta el programa en C para
calcular el )actorial de un n/mero n: n0 1 1 2 , 2 * 2 2 2 n
,-nicio
,.sta/ecer a varia/e contador, con vaor de #
,.sta/ecer a varia/e numero, con vaor de #
,.sta/ecer a varia/e 0actoria, con vaor de #
,1edimos 2ue e usuario introdu3ca a)4n numero
,'e )uarda e dato 2ue e usuario teceo en a varia/e numero
,-niciamos 0or veri0icando 2ue e contador sea menor 2ue e numero
-n)resado, de o contrario sata a (aso #%
,'e muti(ica a varia/e 0actoria (or contador
,5a varia/e contador se incrementa en uno 6 re)resa a (aso 7
,-m(rime 0actoria
,8in
#include<stdio.h>
void main(){
int contador"#, numero"#, 0actoria " #!
print)(".scri/e un numero (ara cacuar su 0actoria+ ")!
scan)("%d",9numero)!

)or( contador " # ! contador <" numero ! contador&& ){
0actoria " 0actoria:contador!
}

print)(". 0actoria de %d " %d\n",numero,0actoria)!}
*. -ise.a el algoritmo% y luego desarrolla y ejecuta el programa en C para
calcular la siguiente suma dado
un n/mero n.

,-nicio
,.sta/ecemos cont;0actoria, con vaor de #
,.sta/ecemos cont;sumatoria, con vaor de #
,.sta/ecemos numero, con vaor de #
,.sta/ecemos 0actoria, con vaor de #
,.sta/ecemos sumatoria, con vaor de #.%
,1edimos a usuario 2ue escri/a un numero
,'e inicia e cico 0or veri0icando 2ue e contador;sumatoria sea menor
2ue e numero in)resado, de o contrario sata a (aso #<
,'e inicia e cico 0or veri0icando 2ue e contador;0actoria sea menor 2ue
e contador;sumatoria in)resado, de o contrario sata a (aso #$
,'e reai3a a muti(icaci=n de a varia/e 0actoria (or contador;0actoria
,-ncrementamos en uno a contador;0actoria 6 se reai3a a muti>icacion
de 0actoria (or contador;0actoria
,'e suman as varia/e sumatoria con sumatoria #$. 5a varia/e
contador;sumatoria se incrementa en uno 6 re)resa a (aso ?
,-m(rime a varia/e sumatoria, 2ue es e resutado a (ro/ema (ro(uesto
,8in
3include <stdio.h>
void main(){
int cont;0actoria"#, cont;sumatoria"#, numero"#, 0actoria"#!
)loat sumatoria"#.%!
print)("Escriba un numero para calcular la sumatoria: ")!
scan)("%d", &numero)!
)or(cont;sumatoria"#! cont;sumatoria<"numero! cont;sumatoria &&){
)or(cont;0actoria"#! cont;0actoria<"cont;sumatoria!
cont;0actoria &&){
0actoria " 0actoria : cont;0actoria!
}
print)("8actoria de %d " %d\n", cont;sumatoria, 0actoria)!
sumatoria"sumatoria&#.%@0actoria!
print)("8umatoria de %d " %0\n", cont;sumatoria, sumatoria)!
0actoria"#!
}

print)("'ABCTDE-C TDTC5 %d " %0\n", numero, sumatoria)!
}
4. -ise.a el algoritmo% y luego desarrolla y ejecuta el programa en C para
)actorizar un n/mero entero% a partir de la siguiente secuencia de
acciones:
a) Establece d% el divisor de prueba% a ,
b) Calcula el residuo r de la divisin de n entre d. (-enotamos esta
operacin como n5d% y la leemos como (n mdulo d(. Consulta los
operadores de C).
c) 6i r es igual a cero% entonces
-espliega d en la pantalla
7eemplaza n por n8d
6i r no es igual a cero% entonces
7eemplaza d por d91
d) 6i n es igual a uno% entonces
:a no ay ms )actores a ser encontrados% as; $ue termina el
programa.
6i n no es igual a uno% entonces
7egresa al paso (b).
-nicio
.sta/ecemos d ( divisor), con vaor de F
.sta/ecemos r(residuo), sin asi)nare vaor
.sta/ecemos n
1edimos a usuario 2ue escri/a un numero
.m(ie3a un cico do
.m(ie3a e condiciona i0
'e im(rime en (antaa e vaor de d?. Gividimos n entre d
C a varia/e d e a)re)amos un #
8in
#include <stdio.h>
void main(){
int r, d=2, n;
printf("Introduca un numero para descomponer di!erente de ":
"#;
scanf("%d", &n#;
do$
r = n%d;
if(r==%#$
printf("d = %d&n", d#;
n = n'd;
( else $
d = d)";
}
} Hhie (n I" #)!
}

e) Cambia la codi)icacin en C del programa anterior y esta vez utiliza
long para los enteros. <e si se produce alguna di)erencia cuando se
)actorizan n/meros grandes. Comenta por $u= o por $u= no ubo
di)erencias. >ota $ue a medida $ue aumenta el tama.o de los n/meros a
)actorizar el programa re$uiere ms tiempo de ejecucin.
#incude <stdio.h>
void main(){
on) r, d"F, n!
(rint0("-ntrodu3ca un numero (ara descom(oner di0erente de #+
")!
scan0("%d", 9n)!
do{
r " n%d!
i0(r""%){
(rint0("d " %d\n", d)!
n " n@d!
} ese {
d " d&#!
}
} Hhie (n I" #)!