You are on page 1of 14

Direccin Universitaria de Educacin a Distancia

EP INGENIERA DE SISTEMAS E INFORMTICA


ALGORITMOS Y ESTRUCTURAS DE DATOS

0203-02204

Nota:
Docente: Ing. Pedro M. Aguirre Apaza
2017-I Ciclo: 03 Seccin: 01 Mdulo I
Datos del alumno: FORMA DE PUBLICACIN:
Apellidos y nombres:
Publicar su archivo(s) en la opcin TRABAJO ACADMICO que figura en
[Escriba texto] el men contextual de su curso
Cdigo de matrcula:
[Escriba texto] Panel de control
Uded de matrcula:
[Escriba texto]
Fecha de publicacin en campus
virtual DUED LEARN:

HASTA EL DOM. 28 DE
MAYO 2017
A las 23:59
(Hora peruana)

Recomendaciones:

1. Recuerde verificar la
correcta publicacin
de su Trabajo
Acadmico en el Aula
Virtual antes de
confirmar al sistema el
envo definitivo al
Docente.
Revisar la previsualizacin de
su trabajo para asegurar
archivo correcto.

2. Las fechas de publicacin de trabajos acadmicos a travs del campus virtual DUED LEARN estn definidas
en la plataforma educativa, de acuerdo al cronograma acadmico 2017-I por lo que no se aceptarn
trabajos extemporneos.

3. Durante la publicacin de su trabajo acadmico NO GUARDAR COMO BORRADOR , realizar envo


definitivo, realizar la verificacin de la publicacin para que el trabajo acadmico sea calificado.

4. Las actividades de aprendizaje que se encuentran en los textos que recibe al matricularse, servirn para su
autoaprendizaje mas no para la calificacin, por lo que no debern ser consideradas como trabajos
acadmicos obligatorios.

1TA20171DUED
Gua del Trabajo Acadmico:
5. Recuerde: NO DEBE COPIAR DEL INTERNET, el Internet es nicamente una fuente de
consulta. Los trabajos copias de internet sern verificados con el SISTEMA
ANTIPLAGIO UAP y sern calificados con 00 (cero).

6. Estimado alumno:
El presente trabajo acadmico tiene por finalidad medir los logros alcanzados en el desarrollo del curso.
Para el examen parcial Ud. debe haber logrado desarrollar hasta la pregunta 02 y para el examen final
debe haber desarrollado el trabajo completo.

Criterios de evaluacin del trabajo acadmico:

Este trabajo acadmico ser calificado considerando criterios de evaluacin segn naturaleza del curso:

Presentacin adecuada del Considera la evaluacin de la redaccin, ortografa, y presentacin del


1 trabajo trabajo en este formato.
Considera la revisin de diferentes fuentes bibliogrficas y electrnicas
confiables y pertinentes a los temas tratados, citando segn la normativa
2 Investigacin bibliogrfica: APA.
Se sugiere ingresar al siguiente enlace de video de orientacin:

Situacin problemtica o caso Considera el anlisis contextualizado de casos o la solucin de


3 prctico: situaciones problematizadoras de acuerdo a la naturaleza del curso.

Considera la aplicacin de juicios valorativos ante situaciones y


4 Otros contenidos
escenarios diversos, valorando el componente actitudinal y tico.

TRABAJO ACADMICO

Estimado(a) alumno(a):
Reciba usted, la ms cordial bienvenida al presente ciclo acadmico de la Escuela
profesional de Ingeniera Industrial en la Universidad Alas Peruanas.
En la gua de trabajo acadmico que presentamos a continuacin se le plantea
actividades de aprendizaje que deber desarrollar en los plazos establecidos y
considerando la normativa e indicaciones del Docente Tutor.

2TA20171DUED
PREGUNTAS:

1. Crear un programa en C# que ingrese nombre, edad y sexo de N alumnos. El programa


finaliza cuando se ingresa en el nombre el cdigo X. Mostrar la cantidad de alumnos de
ambos sexos (3ptos).
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Ejercicio2
{
class Program
{
static void Main(string[] args)
{

int fem = 0, masc = 0;


Console.WriteLine("Ingrese Numero de Alumnos");
int nalum = int.Parse(Console.ReadLine());

for (int i = 1; i <= nalum; i++)


{

Console.WriteLine("Ingrese Nombre de Alumno " + i);


string nombre = Console.ReadLine();
Console.WriteLine("Ingrese Edad de Alumno " + i);
int edad = int.Parse(Console.ReadLine());
Console.WriteLine("Ingrese Sexo de Alumno F : Femenino | M : Masculino");
string sexo = Console.ReadLine();

if (nombre.IndexOf("x") >=0)
{
Console.Write("Finalizar Programa");

3TA20171DUED
Console.ReadKey();
}

if (sexo =="F" || sexo=="f")


{
fem = fem++;
}
else
{
masc = masc++;
}

int total = fem + masc;


Console.WriteLine("Femenino : " + fem);
Console.WriteLine("Masculino : " + masc);
Console.WriteLine("Total : " + total);

Console.ReadKey();

}
}
}

2. Elabore una lnea de tiempo sobre la evolucin de los Lenguajes de Programacin,


considerando: primera generacin; segunda generacin; tercera generacin; cuarta
generacin y quinta generacin. As mismo, indique qu lenguajes se contempla en cada
generacin y sus caractersticas (3ptos).

4TA20171DUED
Popular en las Lenguaje Creado para Lenguaje
De propsito Lenguaje
universidades de tipo ser el leguaje lgico e
general, pertenece
en los aos 60, funciona universal en al alto interpretado,
procedimentales sin llegar a ser
l cualquier nivel conocido en
imperativo y un lenguaje computador la
esta orientado al comercial investigacin
calculo

1956 fortran 1958 Angol, 1960 Lisp 1960 Cobol 1970 Prolog
1964 Basic
IBM Backus John Teresa
McCarth

Toma Creado con


Creado en los Lenjuague de Lenguaje Lenguaje caracteristicas la finalidad e
laboratorios Bell programaci hibrido y orientado del C en grado crear
como evolucin n creado por puede a objetos inferior lenguaje con
del anterior un zuido definir los centrado sintaxis
lenguaje operadores sencilla

1972 C Denis 1975 Pascal 1986 C++ 1986 Eiffel 1987 Perl 1988 Tcl/Tk
M Ritchie Niklaus Bjarne Studio Larry Wall
Wirthu Stroustrup

5TA20171DUED
L.P dinmico Lenguaje
Es de alto L.P orientado orientado a
de cdigo Lenguaje de Lenguaje de
nivel hace a objetos objetos programaci
abierto Programacin
incapie en una implementa
enfocado en orientado a n creado por
sintaxis muy do sobre
la objetos Google
limpia y JAVA
simplicidad y
cdigo legible
productivida
d

1991 Python 1993 Rubi 1995 JAVA 2003 Groovy 2009 Go


2000 C#
Software comunidad JCP Google
foundation rubi

3. Crear un programa en C# que ingrese cdigo, nombre y nota para 5 alumnos. El


programa debe mostrar: (3ptos). Pegar el cdigo fuente
a. Nota mxima
b. Nota minina
c. Promedio de las 5 notas
#include <iostream>
#include <stdio.h>
int main() {

String nombre[5];
String codigo[5];
int notas[5];
int i;

while (i < 5 ){

6TA20171DUED
cout << "Ingresa el cdigo del alumno" << i+1<<endl;
cin >> cdigo[i];
cout << "Ingresa el Nombre del alumno" << i+1<<endl;
cin >> nombre[i];
cout << "Ingrese la Nota del alumno" << i+1<<endl;
cin >> notas[i];
i++;
}

int max = MaximaNota(notas);


int min = minnota(notas);
int prom = NotaPromedio(notas);

cout << "la nota mxima de los 5 alumnos ingresados es " << max;
cout << "la nota minima de los 5 alumnos ingresados es " << min;
cout << "la nota promedio de los 5 alumnos ingresados es " << prom;
return 0;
}
int MaximaNota(int nota[]) {
int mayor;
for (int i=0; i<5; i++){
if (nota[i]> mayor)
mayor=nota[i];
}
return mayor;
}

Int minnota(int nota[]) {


int menor;
for (int i=0; i<5; i++){
if (nota[i]> menor)
menor=nota[i];
}

7TA20171DUED
return menor;
}

float NotaPromedio(int nota[]) {


int suma;
for (int i = 0; i < 5; i++)
suma += nota[i];

return suma / 5;
}

4. Elabore: algoritmo, diagrama y flujo y cdigo fuente en C# de:


a. Al ingresar una hora en segundos, indique a cuantas horas, minutos y
segundos corresponde. (3ptos).

8TA20171DUED
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace segundosahoras
{
class Program
{
static void Main(string[] args)
{

int num, hh, mm, ss;

Console.WriteLine("ingresar segundos a convertir: ");


num = Convert.ToInt32(Console.ReadLine());

hh = (num / 3600);
mm = ((num - hh * 3600) / 60);
ss = num - (hh * 3600 + mm * 60);

Console.WriteLine(hh+" h "+mm+" m "+ss+" s ");


Console.ReadLine();

}
}
}

9TA20171DUED
b. Calcule el producto de dos vectores (3ptos).

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Producto_escalar
{

10TA20171DUED
class Program
{
static void Main(string[] args)
{
Randon rnd= new Randon();
int Productoescalar = 0,n;
Console.WriteLine("ingresar un numero para el tamao del vector");
n = int.Parse(Console.ReadLine());

int [] v= new int[n];


int [] w= new int[n];

for(int i=0; i<n;i++){


v[i] = (int)(rnd.Next(1,20));
w[i] = (int)(rnd.Next(1,20));

}
for(int i=0; i<n;i++)
Console.Write(v[i]+"\t");

Console.WriteLine();

for(int i=0; i<n;i++)


Console.Write(W[i]+"\t");

for(int i=0; i<n;i++)


Productoescalar=Productoescalar+v[i]*w[i];

Console.WriteLine("\nel producto escalar de los vectores es:"+Productoescalar);

Console.readKey();

}
}

11TA20171DUED
}

c. Resolver las serie de Fibonacci (3ptos).

class Program
{
public static int Fibonacci(int n)
{
int a = 0;
int b = 1;

// In N steps compute Fibonacci sequence iteratively.


for (int i = 0; i < n; i++)

12TA20171DUED
{
int temp = a;
a = b;
b = temp + b;
}
return a;
}

static void Main()


{
int n;
Console.WriteLine("ingrese el numero tope del fibonacci");
n = Convert.ToInt32(Console.ReadLine());
for (int i = 1; i <= n; i++)
{
Console.WriteLine(Fibonacci(i));
}
}
}

13TA20171DUED
Para los puntos a, b y c: escribir el algoritmo, hacer el diagrama de flujo, pegar el cdigo
fuente utilizado y pegar la captura de pantalla del resultado en C#.

14TA20171DUED