Introducción a la Dirección de Proyectos. Parte II
Fundamentos programacion 2010_1
1. Fundamentos de Programación
REPORTE DE EVALUACIÓN
ACREDITACIÓN ABET
FUNDAMENTOS DE PROGRAMACIÓN
I Término – 2010
FIEC – ESPOL
Fundamentos de Programación es un curso tomado por estudiantes de Ingeniería en Ciencias
Computacionales, Telemática, Telecomunicaciones y Automatización Industrial durante el
segundo semestre para Computación y más adelante para las otras carreras.
1. Objetivos del curso
1. Resolver problemas básicos de ingeniería aplicando el conocimiento y correcta utilización de
estructuras de control (a, b)
2. Reconocer la importancia de las funciones como herramienta para simplificar la estructura de un
programa (c).
3. Implementar funciones que contengan estructuras de control aprendidas en este curso (c).
4. Utilizar archivos de texto para el almacenamiento de información (i).
5. Implementar proyectos que integren los conceptos aprendidos, expresados en un lenguaje de alto
nivel con la ayuda de una herramienta de programación (c, i)
2. Objetivos del Curso / Resultados de Aprendizaje / Métodos de Evaluación
Thre
Objetivos
shol
del A-K Método de Evaluación
d
Curso
Proyecto parcial,
a,b, Habilidad para diseñar, implementar, y evaluar un Lección 2 del Primer Parcial
2 60%
c sistema utilizando funciones Examen parcial, preguntas 1,2,3
Examen final preguntas 1,2,3
Practica Primer parcial
a,b, Habilidad para diseñar, implementar, y evaluar un Lección 2 del Primer Parcial
1,3 60%
c sistema utilizando estructuras de control Examen parcial
Examen final
Habilidad para usar archivos de texto para el Proyecto final
4 i 60%
almacenamiento de información Practica Segundo parcial
Habilidad para diseñar, implementar y evaluar un
1, 2, 5 c,i proyecto usando lenguaje C y el entorno de Proyecto parcial, Proyecto final 60%
desarrollo Visual Studio ( compilar/depurar)
Prof. Ing. Carmen Vaca Ruiz
Paralelo#2. - I Término 2010
Pág 1 of 13
2. Fundamentos de Programación
3. Plan del curso
Objetivo
Tareas, Prácticas,
Tema Fecha de A-K
Proyectos
curso
Politicas del Curso. Introduccion a las computadoras. Introduccion
1 17/05/2010 1 a,b
a C. Elaboración del programa HelloWorld.c
Introduccion a C.- Variables:Definición, uso, tipos de datos, uso de
2 21/05/2010 1 a,b Tarea Nº 1
printf y scanf. Operador de asignación
Tarea1: Uso del IDE
3 FERIADO 24 DE MAYO - NO HUBO CLASES 24/05/2010 1 a,b
25/May/2010
Introduccion a C: Operadores aritméticos, relacionales, logicos.
4 28/05/2010 1 a,b
Sentencia condicional if, sentencia if-else
Leccion: Evaluación de Variables y sentencias condicionales if-
Lección 1:
5 else. Clase: Sentencias condicionales if-else-if. Condicionales 31/05/2010 1 a,b
Condicionales simples
anidados. Ejercicios. Sentencia switch.
Estructuras de control: Sentencias de repetición. Lazo for, lazo
Practica01(en clase):
6 while, lazo do-while. Practica: Uso de lazos y condiciones dentro 04/06/2010 1 a,b
Estructuras de control
de lazos. Variables acumuladores y variables contadores.
Leccion: Sentencias de repeticion que incluyen condicionales
anidados. Lección 2:
7 07/06/2010 1 a,b
Uso de lazo while para la división de un número en digitos: Uso de lazos
resolucion de problemas. Reversar un número
Practica02( en clase):
8 Lazos anidados. Practica 11/06/2010 1 a,b
Lazos anidados
Funciones: Uso de funciones definidas en librerias ( ej. math.h).
9 Funciones definidas por usuario: prototipo, implementacion, 14/06/2010 2, 3 c
argumentos
Numeros aleatorios. Funciones tipo predicado. Laboratorio: Uso y Practica 03 (en clase):
10 18/06/2010 2, 3 c
definición de funciones. Funciones
Arreglos: Definicion, inicialización, uso de constantes para el
11 21/06/2010 5 c,i Lección 3: Funciones
tamanio, asignación de valores a un elemento
Tarea No 2:
12 Ejercicios de examen usando arreglos 25/06/2010 1,2,3 a,b
Avance del proyecto
Arreglos: Uso de arreglos como contadores, generación de
13 28/06/2010 1 a,b
posiciones aleatorias
14 Ejercicios de examen 02/07/2010 1,2,3 a,b Avance Proyecto
EXAMEN PARCIAL 10/07/2010
Resolución de examen parcial. Arreglos de 2 dimensiones: Entrega de
15 definición, uso, lazo anidado para recorrer una matriz, recorrido de 12/07/2010 1,2,3 a,b Proyecto del Primer
una fila, de una columna, de una diagonal. Parcial
Paso de arreglos de 2 dimensiones a una función. Validar
movimientos en un tablero representado por una matriz, actualizar
16 16/07/2010 3 c
casillas de una matriz según reglas dadas en una función.
Funciones recursivas, definición, uso. Resolución de ejercicios
Punteros: definición, uso. Aritmética de punteros, paso de
17 19/07/2010 1 a,b
parámetros por referencia
Evaluación proyecto
18 Sustentación de proyecto del primer parcial 23/07/2010 5 i
primer parcial
Caracteres. Librería ctype. Arreglos de caracteres, definición de
19 26/07/2010 1 a,b
Atrings, paso de cadenas como parámetros de funciones.
20 Cadenas de caracteres. Libreria string.h 30/07/2010 1 a,b
21 Cadenas de caracteres II 02/08/2010 1 a,b
Leccion #1: Matrices y
cadenas
22 Lección de Matrices y cadenas. Cadenas de caracteres, practica 06/08/2010 1 a,b
Practica: Cadenas y
matrices
Prof. Ing. Carmen Vaca Ruiz
Paralelo#2. - I Término 2010
Pág 2 of 13
3. Fundamentos de Programación
Objetivo
Tareas, Prácticas,
Tema Fecha de A-K
Proyectos
curso
Archivos: funciones para manejo de archivos: apertura,
23 09/08/2010 4 i
lectura/escritura por caracteres, cerrar un archivo
Feriado Nacional ( 10 de agosto se movió al 13 de agosto ) Se
24 asignó un conjunto de ejercicios a realizar sobre archivos y 13/08/2010
matrices y se tomara una evaluación en la semana siguiente.
25 Archivos: lectura de información con formato 16/08/2010 4 i
Estructuras: definición, uso y actualización. Practica sobre Lección # 2:
26 20/08/2010 1 a,b
archivos archivos y cadenas
Arreglos de estructuras, ejercicios usando cadenas, estructuras y
27 23/08/2010 1 a,b
archivos
Tarea:
Librerías: Ejercicio práctico sobre cómo crear la librería para el
28 27/08/2010 5 i Avance Proyecto Final:
proyecto
28/Agos/2010
EXAMEN FINAL 04/09/2010 Proyecto Final:
8/Sep/2010
Prof. Ing. Carmen Vaca Ruiz
Paralelo#2. - I Término 2010
Pág 3 of 13
4. Fundamentos de Programación
4. Resultados por evaluación
- 35 estudiantes se registraron en el curso
- 34 estudiantes fueron evaluados en el Primer Parcial debido a que el Sr. Cristian Abarca dejó de asistir
a clases pero no anuló el curso.
- 33 estudiantes fueron evaluados en el Segundo Parcial debido a que la Srta Viviana Vacas dejó de
asistir a clases después de la primera evaluación.
4.1. Prácticas
Durante el semestre los estudiantes realizaron prácticas utilizando laptops del laboratorio móvil en las cuales está
instalada la herramienta Visual Studio.
Las prácticas fueron realizadas durante la sesión de clase con asistencia del profesor. Se explicó a los estudiantes que
ciertas prácticas se seleccionarían como puntos extras en la nota del primero y del segundo parcial. Se asignó un máximo
de 3 ptos extras por prácticas del primer parcial y 1 punto extra por prácticas del segundo parcial.
Las prácticas se realizan en grupos de 2 personas, los estudiantes obtienen los puntos extras siempre y cuando se
culmine la práctica durante la sesión de clase.
PRACTICA#1 - PRIMER PARCIAL (ESTRUCTURAS DE DECISIÓN Y DE REPETICIÓN )
La primera práctica requería que el estudiante complete dos ejercicios propuestos:
Escriba un programa que:
1.) Dado un número, imprima todos los divisores menores que el número
Num: 24
Los divisores de 24 son:
1,2,3,4,6,8,12
2.) Dada la altura y el peso calcule el BMI ( Body Mass Index )
<18.5 underweight
18.5 – 24.9 normal
25 – 29.9 overweight
>30 obese
Muestre al usuario cuál es su condición actual.
EJERCICIOS PROPUESTOS PARA TRABAJO EN CASA:
3.) Pida al usuario un valor mínimo y un valor máximo
a. Muestre los múltiplos de 3 en ese rango
b. Muestre la suma de los valores terminados en 7 en ese rango
c. Muestre los números pares en ese rango
Resultados:
29 de 34 estudiantes completaron la práctica satisfactoriamente.
En la primera práctica realizada en clases los estudiantes tienen dificultades con los siguientes temas:
• Detectar los errores en el programa usando la herramienta Visual Studio
• Detectar errores de sintaxis no mostrados por el compilador como, por ejemplo, olvidar el uso del operador & en la
sentencia scanf
Durante la práctica se trabajó con la ayuda del proyector para mostrar cómo resolver las dificultades presentadas.
En el anexo se incluyen algunas muestras de las prácticas desarrolladas por los estudiantes.
LAZOS ANIDADOS
La segunda práctica requería que el estudiante complete tres ejercicios de entre varios propuestos:
1.) Muestre sumas de números consecutivos, incrementando la cantidad de operandos hasta incluir al
número ingresado por teclado. Ejemplo:
Ingrese un número: 3
1 + = 1
1 + 2 = 3
1 + 2 +3 = 6
2.) Escriba un programa que genere un triángulo rectángulo solicitando la altura del triángulo y
utilizando el carácter ASCII 1 ( como alternativa puede solicitar el código ASCII a usar ).
3.) Escriba un programa que solicitando la altura, genere un triángulo como el mostrado a
continuación:
Ingrese la altura: 5
*
**
***
****
*****
****
***
**
*
Prof. Ing. Carmen Vaca Ruiz
Paralelo#2. - I Término 2010
Pág 4 of 13
5. Fundamentos de Programación
4.) Escriba un programa que solicite un número al usuario y genere un triángulo rectángulo en el
que cada línea contiene números consecutivos que empiezan en 1. Ejemplo:
Ingrese un entero: 4
1
1 2
1 2 3
1 2 3 4
PRACTICA #1– SEGUNDO PARCIAL
La primera práctica requería que el estudiante complete dos ejercicios propuestos utilizando conceptos sobre Cadenas de
caracteres y sobre Archivos:
1.) Modificar la función dada int extraerInformacion(FILE *in,FILE *out, char *sufijo) de tal
manera que busque en el archivo apuntado por in el sufijo "ar" y lo cambie por el sufijo dado
en la función, el resultado debe escribirse en el archivo apuntado por out. Puede hacer un test
de su función usando el programa main que se provee. La función debe retornar el número de
palabras que fueron corregidas
#include . . .
#define MAX 100
void main(){
FILE *f=fopen("original.txt","r");
FILE *g=fopen("corregido.txt","w");
int n;
n = extraerInformacion(f,g,"aba");
printf("%d palabras fueron corregidas", n);
}
int extraerInformacion(FILE *in,FILE *out, char *sufijo){
char temporal[MAX];
int i=0;
while((fscanf(in,"%s", temporal))!=EOF){
//AQUI SU CODIGO PARA MODIFICAR TEMPORAL
fprintf(out,"%s ",temporal);
}
return i;
}
2.) Modificar la función dada int extraerInformacion(FILE *in,FILE *out, char *sufijo) de tal
manera que busque en el archivo apuntado por in el sufijo "y" y lo cambie por "es", el sufijo
"s" y lo cambie "es" y si el sufijo es una vocal simplemente agregue "s", el resultado debe
escribirse en el archivo apuntado por out.
Nota: Para probar el resultado de esta práctica puede utilizar el archivo original.txt que se
adjunta
4.2. Lección 2 del 1er Parcial ( 10 puntos )
La pregunta 1 solicitaba al estudiante escribir una función que, dado un número, determine si es o no un
número primo. En la pregunta 2, se requería escribir un programa que utilice la función.
Los resultados obtenidos se muestran a continuación:
Pregunta 1: Pregunta 2:
Calificado sobre: 4 ptos 6ptos
Threshold: 2,4 ptos (60%) 3,6 ptos(60%)
# estudiantes sobre el threshold: 23 15
% estudiantes sobre el threshold: 67,65% 44,12%
Promedio 2,9 3,04
Desviación estándar: 1,27 1,8
Prof. Ing. Carmen Vaca Ruiz
Paralelo#2. - I Término 2010
Pág 5 of 13
6. Fundamentos de Programación
F
PREGUN
NTA 1 PR
REGUNTA 2
Min 0 4,5 7
4
Q1 2 6
3,5
Q1 Min 0 5 Q1
Median 3,25 3
2,5 Min Q1 1,3
3 4
Q3 4 Min
2
Max 4 1,5
Med
dian Median 3 3 Median
1 Max
x Q3 4,8
8 2 Max
0,5 Max
M 6 1 Q3
Q3
0
0
1 1
El concep de funciones predicado se introdujo en la clase anterior a la fu
pto o unción y alrededor del 68% de
%
estudiante demostraro habilidad p
es on para escribir u función (O
una Objetivo 3 de curso, c de ABET). Sin e
el embargo,
solamente el 44% de estudiantes de
e e emuestran ha abilidad para u
utilizar la funcción en un pro
ograma.
En dos claases posteriores (25-jun y 2-jul) se traba
ajaron ejercic
cios de exáme
enes anteriores en los cua
ales se
revisó el m
mecanismo pa llamar a u función desde un prog
ara una grama.
En el proy
yecto parcial y final, los est
tudiantes hicieron uso exte
enso de funciones.
4.3. Exa
amen parcial
l
Calificado s
sobre:
Threshold: 30 ptos (60
0%)
# estudiant sobre el thr
tes reshold: 21
% estudian
ntes sobre el threshold: 61.
t .76%
Exam
men Par
rcial
Estadística Examen P
as Parcial 50
Q1 24 40
Min 17 30
Median 33 20
Max 50 10
Q3 39,7
75
0
1 3 5 7 9 11 13 15 17 19 2 23 25 27 29 31 33
21
En el exa
amen se evalú
úan pregunta
as que permit
ten medir los criterios a, b,
, c de ABET co
omo sigue:
Pregunta Criterio ABE
ET Objetivo
del
curso
1 (a) Habilidad para aplica conocimient de computa
ar tos ación y matemá áticas apropiad a su
dos 1,2,3
disciplina: uso de co
ontadores, acum
muladores, rea
alización de opeeraciones mate emáticas
usand variables de un programa.
do e
2 (b) Habilidad para analiz un problem e identificar y definir los re
zar ma, r equerimientos 1,2,3
compu utacionales apropiados para su solución.
(c) Habilidad para diseñ implementa y evaluar un sistema utiliz
ñar, ar, n zando concepto de
os
prograamación básica tales como estructuras de c
a control ( lazos, condiciones) , funciones, y
arreglos de una dime ensión
3 (c) Habilidad para diseñ implementa y evaluar un sistema utiliz
ñar, ar, n zando concepto de
os 1,2,3
prograamación básica tales como estructuras de c
a control ( lazos, condiciones), f
funciones, y
arreglos de una dime ensión
Prof Ing Carm Vaca Ruiz
men
7. Fundamentos de Programación
Los resultados obtenidos por pregunta son los siguientes:
Pregunta 1: Pregunta 2: Pregunta 3:
Calificado sobre: 20 40 40
Threshold (60%): 12 ptos 27 ptos 27 ptos
# estudiantes sobre el threshold: 29 27 10
% estudiantes sobre el threshold: 85% 79% 29%
Promedio: 16.48 31.48 18.00
Desviación estándar: 4.64 12.55 11.22
PREGUNTA 1
Pregunta Nº 1
Min 4 25 Q1
Q1 14 20
Min
Median 18 15
Q3 19.5 Media
10
Max 20 n
5
Max
0
29 de 34 estudiantes ( 85% ) demostraron habilidad en el uso de lazos, contadores y realización de
operaciones matemáticas utilizando el lenguaje de programación C.
PREGUNTA 2 Pregunta Nº 2
45
Min 0.5 40
Q1 32 35 Q1
Median 37 30 Min
25
Median
Q3 40 20
Max
Max 40 15
10 Q3
5
0
27 de 34 estudiantes ( 85% ) demostraron para resolver un problema identificando los requerimientos
computacionales adecuados para la solución. La pregunta planteaba un algoritmo con reglas definidas y los
estudiantes en su gran mayoría pudieron traducirlo a un algoritmo en un lenguaje de programación.
PREGUNTA 3 Pregunta Nº 3
50
Min 0 Q1
Q1 9 40
Min
Median 17 30
Median
Q3 27 20
Max
Max 30 10
Q3
0
10 de 40 estudiantes ( 29% ) resolvieron esta pregunta con un nivel de rendimiento mayor al 60%. Dado que
la pregunta 2 medía habilidades similares, y analizando las respuestas de los estudiantes se concluye que
muchos de ellos no tuvieron tiempo suficiente para leer y desarrollar el tema final. En el proyecto parcial y en
Prof. Ing. Carmen Vaca Ruiz
Paralelo#2. - I Término 2010
Pág 7 of 13
8. Fundamentos de Programación
la sustentación del mismo se midieron habilidades para desarrollar un programa complejo a partir de
instrucciones dadas y se obtuvo un buen rendimiento.
4.4. Examen final
En el examen se evalúan preguntas que permiten medir los criterios a, b, c de ABET como sigue:
Pregunta Criterio ABET Objetivo
del
curso
2 (c) Habilidad para diseñar, implementar, y evaluar un sistema utilizando conceptos de 1,2,3
programación básica tales como arreglos de dos dimensiones, condicionales, lazos for
3 (a) Habilidad para diseñar, implementar, y evaluar un sistema utilizando conceptos de 1,2,3,4
programación básica tales como uso de archivos, cadenas de caracteres.
Los resultados obtenidos por pregunta son los siguientes:
Pregunta 2: Pregunta 3:
Calificado sobre: 35 45
Threshold (60%): 21 ptos 27 ptos
# estudiantes sobre el threshold: 26 19
% estudiantes sobre el threshold: 76% 56%
Promedio: 26.77 30.19
Desviación estándar: 9.55 13.08
PREGUNTA 2
Pregunta Nº 2
Min 0
40
Q1 27.75 35
Median 30.5 Q1
30
Q3 32 25 Min
Max 35 20 Median
15 Max
10 Q3
5
0
26 de 34 estudiantes (76%) mostraron habilidad para trabajar con arreglos de 2 dimensiones. En el proyecto
final los estudiantes utilizaron un arreglo de dos dimensiones para construir un tablero de Scrabble y esto les
permitió aplicar este concepto y contribuyó al aprendizaje del mismo.
Prof. Ing. Carmen Vaca Ruiz
Paralelo#2. - I Término 2010
Pág 8 of 13
9. Fundamentos de Programación
PREGUNTA 3
Pregunta Nº 3
Min 0
50
Q1 22.875
45
Median 30.5 40
Q3 42.25 35
Q1
30 Min
Max 45
25 Median
20 Max
15
Q3
10
5
0
19 de 34 estudiantes (56%) mostraron habilidad para desarrollar un programa que requiere manejo de
archivos, estructuras de datos y cadenas de caracteres. Dado que el tema requería el manejo de varios
conceptos de programación de forma integrada, ciertos estudiantes no completaron el desarrollo del mismo.
Prof. Ing. Carmen Vaca Ruiz
Paralelo#2. - I Término 2010
Pág 9 of 13
11. Fundamentos de Programación
Practica 01.
Ejercico #1 RESPUESTAS A PRACTICA #1
#include <stdio.h>
void main(){
int num, i, cnt=0;
printf("DIVISORES DE UN NUMERO POSITIVOn");
printf("n==============================n");
printf("Ingrese un numeron positivo: ");
scanf("%d",&num);
for(i=1; i<=(num/2); i++){
if(num%i==0){
cnt++;
printf("%d, ",i);
}
}
printf("n Se encontraron %d divisoresn", cnt);
}
/* Autor: Carlos Zambrano Miño.
Freddy Quimis Marcillo.
Curso: Fundamentos de Programación Paralelo 2
Profesora: Carmen Vaca
Descripcion: Programa que calcula los divisores de un determinado numero positivo */
Ejercicio #2
#include <stdio.h>
void main(){
double bmi,w,h;
printf("Ingrese su peso en libras: n");
scanf("%lf",&w);
printf("Ingrese su altura en pulgadas: n");
scanf("%lf",&h);
bmi=( (704.5) * (w/(h*h)));
if(bmi<18.5)
printf("under weightn");
else if((bmi>=18.5)||(bmi<=24.9))
printf("normaln");
else if((bmi>=25)||(bmi<=29.9))
printf("overweight");
else
printf("obese");
}
/* Autor: Carlos Zambrano Miño.
Freddy Quimis Marcillo.
Curso: Fundamentos de Programación Paralelo 2
Profesora: Carmen Vaca
Descripcion: programa que indica en que estado se encuentra una persona de acuerdo a su índice de masa corporal */
/*Practica #01
Autores: Stella Andrade
Roger Granda
Curso: Fundamentos de Programacion
Paralelo: 2
Profesora: Ing. Carmen Vaca
Descripcion: Programa que imprima las divisiones de un numero*/
#include<stdio.h>
void main () {
int n, i,cont=0 ;
printf("Calculo de los divisores de un numeron");
printf("=======================================nn");
printf("nIngrese un numero: ");
printf("n==================================n");
scanf("%d",&n);
printf("nLos divisores de %d son: n", n);
for(i=1 ; i<=n/2 ; i++){
if((n%i)==0){
cont++;
printf("%d, ",i);
}
}
printf("n==================================n");
printf("n se encontraron %d divisoresnnn", cont);
printf("n==================================n");
}
//Descripcion: Programa que calcula el BMI de una persona, pidiendo su altura en pulgadas y su peso en libras
#include <stdio.h>
void main(){
float peso, altura;
double bmi;
printf("Calculo de el BMI");
printf("n==========================n");
printf("Ingrese su peso en libras: ");
scanf("%f",&peso);
printf("nIngrese su altura en pulgadas: ");
scanf("%f",&altura);
bmi=704.5*peso/(altura*altura);
if(bmi<18.5){
printf("nUd. esta bajo de pesonn");
}else if(bmi<24.9)
printf("Ud. esta con peso normalnn");
else if(bmi<29.9)
printf("nUd. esta con sobrepesonn");
Prof. Ing. Carmen Vaca Ruiz
Paralelo#2. - I Término 2010
Pág 11 of 13
12. Fundamentos de Programación
else
printf("nUd. esta obesonn");
}
/*comentario
Autor: Bryant Niola
Jorge Aviles
Curso: Fundamentos de programacion Paralelo: 1 RESPUESTAS A PRACTICA #1
Profesora: Carmen Vaca*/
//Comentario : Todo correcto!!
#include<stdio.h>
void main(){
int num,i,dato,cnt=0;
printf("Ingrese Numero");
scanf("%d",&num);
for(i=1;i<=num-1;i++){
if(num%i==0)
{ printf("%d,",i);
cnt++;
}
}
printf(" Se encontraron %d de divisores ",cnt);
}
#include<stdio.h>
void main(){
float weigth,heigth,variable=704.5,bmi;
printf("Ingrese su peso");
scanf("%f",&weigth);
printf(" Ingrese su estatura");
scanf("%f",&heigth);
bmi=variable*(weigth)/(heigth*heigth);
if(bmi<18.5){
printf("underweigth");
}
if(bmi>=18.5&&bmi<=24.9)
printf(" normal");
if(bmi>=25&&bmi<=29.9);
printf(" overweigth");
if(bmi>=30)
printf(" obese ");
}
/*
AUTOR: OMAR GUZHÑAY
MARIO BARZOLA
CURSO: FUNDAMENTOS DE PROGRAMACION
PROFESORA: CARMEN VACA
DESCRIPCION:
ESTE PROGRAMA PRESENTAS TODOS LOS DIVISORES DE UNA CIERTA CANTIDAD INGRESADA POR EL USUARIO,
ADEMAS MUESTRA CUANTOS DIVISORES SE ENCONTRARON
*/
#include <stdio.h>
void main()
{
int num,i,cnt=0,b;
printf("Ingrese un numero: ");
scanf("%d",&num);
if (num!=0)
printf("Los numeros ingresados son: n");
for(i=1;i<=((num/2));i++)
{
if((num%i)==0)
{
cnt++;
printf("%d,",i);
}
}
printf("nSe encontraron %d divisoresn",cnt);
getch();
return 0;
}
/*
AUTOR: OMAR GUZHÑAY
MARIO BARZOLA
CURSO: FUNDAMENTOS DE PROGRAMACION
PROFESORA: CARMEN VACA
DESCRIPCION:
ESTE PROGRAMA PRESENTAS LOS CUATRO ESTADOS POSIBLES DE UNA PERSONA FISICAMENTE LOS CUALES DEPENDERAN DE SU
ALTURA Y PESO EN PULGADAS Y LIBRAS RESPECTIVAMENTE
FORMULA GENERAL: bmi=(704.5*((peso)/(altura^2)));
BMI < 18.5 CORRESPONDE A UNDER Weight
18.5 -BMI- 24.5 CORRESPONDE A NORMAL
25.0 -BMI- 29.9 CORRESPONDE A OVER Weight
BMI >= 30.0 CORRESPONDE A OBESE Weight
*/
#include <stdio.h>
void main()
{
Prof. Ing. Carmen Vaca Ruiz
Paralelo#2. - I Término 2010
Pág 12 of 13
13. Fundamentos de Programación
float peso,altura,bmi;
printf("Ingrese su peso en libras: ");
scanf("%f",&peso);
printf("Ingrese su altura en pulgadas: ");
scanf("%f",&altura);
bmi=(704.5*((peso)/(altura*altura)));
if (bmi<18.5)
printf("Under Weightn");
else if (bmi<=24.9)
printf("Normaln");
else if (bmi<=29.9)
printf("Over Weightn");
else if (bmi>=30)
printf("Obesen");
getch();
return 0;
}
/*
Nota: Para elevar al cuadrado la altura se considero (altura * altura) aunque se debio de utilizar la sentencia
pow(x,y)
con su respectiva libreria #include <math.h> al inicio
ejemplo:
#include <math.h>
bmi=(704.5*((peso)/(pow(altura,2))));
*/
RESPUESTAS A PRACTICA #2
/*
Autores: Alejandro Vinueza
Estrella Montero
Materia: Fund de Progamacion 2010 I
Paralelo: 2
Profesor: Ing Carmen Vaca*/
#include<stdio.h>
void main(){
int i, j, n, suma=0; /*
do{ Autores: Alejandro Vinueza
printf("Ingrese un Estrella Montero
n%cmero: ",163); Materia: Fund de Progamacion 2010 I
scanf("%d",&n); Paralelo: 2
}while(n<=0); Profesor: Ing Carmen Vaca*/
for(i=1; i<=n; i++){
for(j=1; j<=i; j++){ #include<stdio.h>
printf("%d void main(){
",j); int i, j, n;
if(j!=i) do{
printf("Ingrese un n%cmero: ",163);
printf("+ "); scanf("%d",&n);
suma=suma+j; }while(n<0);
} for(i=1; i<=n; i++){
printf("= %d",suma); for(j=1; j<=i; j++)
suma=0; printf(" %c ",1);
printf("n"); printf("n");
} }
} }
Prof. Ing. Carmen Vaca Ruiz
Paralelo#2. - I Término 2010
Pág 13 of 13