You are on page 1of 17

Trabajo Colaborativo Nro.

ALGORITMOS TRABAJO COLABORATIVO Nro.3


Realizados en Microsoft Visual Studio Express

Ing. xxxxxxxxxxxxxxxxx
Tutor de Curso

PRESENTADO POR:
xxxxxxxxxxxxxxxxxx
CODIGO: xxxxxxxxxxxxxxx

Grupo: 301303_

Mayo 2015

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD

Ejercicios de la gua Trabajo Colaborativo 3realizados en Visual Studio


Express.

Ejercicios

1. Un banco ha solicitado se disee un programa que permita encriptar la informacin


de las contraseas (4 nmeros) digitada por teclado (como un nico numero) hasta el
servidor principal, utilizando el siguiente criterio, el primer nmero se enva de ltimo,
el segundo, de penltimo, el tercer numero pasa a la segunda posicin, el ltimo pasa
a ser primero: ejemplo: Sea 6532, se debe enviar como 2356
Algoritmo
using System;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Threading.Tasks;
namespace Ejerc_1_TC_3_Banco_Contraseas
{
classProgram
{
staticvoid Main(string[] args)
{
//Nombre del Autor: xxxxxxxxxxxxxxxxxxxxxxxxxx//
//Fecha: 05 Mayo 2015
//Doy fe que este ejercicio es de mi autora, en caso de encontrar plagio la nota de todo mi
//trabajo debe ser de CERO adems de las respectivas sanciones a que haya lugar //
//Un banco ha solicitado se disee un programa que permita encriptar la informacin de las
contraseas
//(4 nmeros) digitada por teclado (como un nico numero) hasta el servidor principal,
utilizando
//el siguiente criterio, el primer nmero se enva de ltimo, el segundo, de penltimo, el
tercer numero
//pasa a la segunda posicin, el ltimo pasa a ser primero: ejemplo: Sea 6532, se debe
enviar como 2356
String a = "";
Console.WriteLine("Ingresa un numero de 4 digitos");
String pal = Console.ReadLine();
intnumero = pal.Length;
if (numero > 4)
{
Console.WriteLine(" El numero ingresado por usted no es de 4 dijitos, la contrasea debe
ser de 4 digitos");
Console.ReadLine();
}
if (numero < 4)
{

Console.WriteLine(" El numero ingresado por usted no es de 4 dijitos, la contrasea debe


ser de 4 digitos");
Console.ReadLine();
}
if (numero == 4)
{
for (inti = numero - 1; i>= 0; i--)
{
a = a + pal.Substring(i, 1);
} }
Console.WriteLine(" La Clave Asignada Es : {0} ", a);
Console.WriteLine("");
Console.ReadLine();
}

PantallaVisual Studio Express

________________________________
2. Escribir un programa para calcular la fecha del siguiente da a partir de una fecha
digitada desde el teclado por el usuario ( dd, mm, aaaa ) e imprimirla. (Tenga en
cuenta los aos bisiestos.).
Algoritmo
using System;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Threading.Tasks;
namespace Ejerc_2_TC_3_Calculo_Fecha
{
classProgram
{
staticvoid Main(string[] args)
{
//Nombre del Autor: xxxxxxxxxxxxxxxxxxxxxxxxxx//
//Fecha: 05 Mayo 2015
//Doy fe que este ejercicio es de mi autora, en caso de encontrar plagio la nota de todo mi
//trabajo debe ser de CERO adems de las respectivas sanciones a que haya lugar //
// Escribir un programa para calcular la fecha del siguiente da a partir de una fecha digitada
// desde el teclado por el usuario ( dd, mm, aaaa ) e imprimirla. (Tenga en cuenta los aos
bisiestos.).

int a, x_siguiente, dia;


intdia_siguiente, mes, mes_siguiente;
Console.Write("Ingrese el valor de dia: ");
dia = int.Parse(Console.ReadLine());
Console.Write("Ingrese el valor de mes: ");
mes = int.Parse(Console.ReadLine());
Console.Write("Ingrese el valor de ao: ");
a = int.Parse(Console.ReadLine());
if ((dia> 30 && (mes == 4 || mes == 6 || mes == 9 || mes == 11)) || (dia> 29 && mes ==
2) || (dia> 28 && mes == 2 && ((a % 4 != 0) || (a % 100) == 0) && (a % 400) != 0) || (dia>
31))
{
Console.WriteLine(" Usted Dijito Valores No Validos ");
}
else

{
if ((dia == 30 && (mes == 4 || mes == 6 || mes == 9 || mes == 11)) || (dia == 29 && mes
== 2) || (dia == 28 && mes == 2 && ((a % 4 != 0) || (a % 100) == 0) && (a % 400) != 0) ||
(dia == 31))
{
dia_siguiente = 0;
mes_siguiente = mes + 1;
}
else {
dia_siguiente = dia + 1;
mes_siguiente = mes;
}
if (dia_siguiente == 0 &&mes_siguiente == 0) {
mes_siguiente = 0;
x_siguiente = a + 1;
}
else
x_siguiente = a;
Console.WriteLine(" Valor de diasuguiente : " + dia_siguiente);
Console.WriteLine(" Valor de mes siguiente : " + mes_siguiente);
Console.WriteLine(" Valor de ao siguiente : " + x_siguiente);
}
Console.ReadKey();
}
}
}

PantallaVisual Studio Express

________________________________
3. Se lee un nmero de mximo tres dgitos (verifique que efectivamente sea de
mximo tres dgitos) y se debe determinar si es un nmero capica, es decir, que
ledo de izquierda a derecha es igual que ledo de derecha a izquierda. Por ejemplo:
727, 343, etc.
Algoritmo
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Threading.Tasks;
namespace Ejerc_3_TC_num_3_dijit
{
classProgram
{
staticvoid Main(string[] args)
{
//Nombre del Autor: xxxxxxxxxxxxxxxxxxxxxxxxxx//
//Fecha: 06 Mayo 2015
//Doy fe que este ejercicio es de mi autora, en caso de encontrar plagio la nota de todo mi
//trabajo debe ser de CERO adems de las respectivas sanciones a que haya lugar //
//Se lee un nmero de mximo tres dgitos (verifique que efectivamente sea de mximo tres
dgitos)
// y se debe determinar si es un nmero capica, es decir, que ledo de izquierda a derecha
es igual
// que ledo de derecha a izquierda. Por ejemplo: 727, 343, etc.
// Este programa determina si un nmero es capica o no es capica
Console.WriteLine(" ");
Console.WriteLine("Ingrese el nmero de tres digitos: ");
Console.WriteLine(" ");
intNro = int.Parse(Console.ReadLine());
int C = Nro / 100;
int U = Nro % 10;
if (C==U)
{
Console.WriteLine(" El nmero Dijitado por usted es un Numero Capicua " );
}
else
{
Console.WriteLine(" El nmero Dijitado por usted No es un Numero Capicua ");
}

Console.ReadKey ();
}
}
}

PantallaVisual Studio Express ejecutando Numero Capicua

PantallaVisual Studio Express ejecutando Sin Numero Capicua

________________________________

4. En una organizacin se tiene a los empleados agrupados por categora, los de


categora 1 ganan $20.000, los de categora 2, $15.000, los de categora 3, $10.000 y
los de categora 4, $7.500. Se quiere un algoritmo que permita determinar cunto
debe pagarse a un empleado si se conoce el nmero de horas que trabaj durante el
mes y la categora a la que pertenece. Se sabe que a todos se les descuenta un 7.2%
por concepto de salud, y si el salario total devengado (mensual) es menos de 1
000.000, se le da un subsidio del 15% sobre su salario mensual (sin descuentos).
Algoritmo
using System;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Threading.Tasks;

namespace Ejec_4_TC_4_Organizacion
{
classProgram
{
staticvoid Main(string[] args)
{
//Nombre del Autor: xxxxxxxxxxxxxxxxxxxxxxxxxx//
//Fecha: 05 Mayo 2015
//Doy fe que este ejercicio es de mi autora, en caso de encontrar plagio la nota de todo mi
//trabajo debe ser de CERO adems de las respectivas sanciones a que haya lugar //
// En una organizacin se tiene a los empleados agrupados por categora, los de categora 1
ganan $20.000,
// los de categora 2, $15.000, los de categora 3, $10.000 y los de categora 4, $7.500.
// Se quiere un algoritmo que permita determinar cunto debe pagarse a un empleado si se
conoce el nmero
// de horas que trabaj durante el mes y la categora a la que pertenece. Se sabe que a
// todos se les descuenta un 7.2% por concepto de salud, y si el salario total devengado
(mensual)
// es menos de 1 000.000, se le da un subsidio del 15% sobre su salario mensual (sin
descuentos).
int horas;
intcategoria;
double subsidio, sal=0, descuento;
int salir = 1;
//ya que el ejercicio no especifica los valores para cada categorialos tomo como ganancia
por 1 hora trabajada
do {
Console.Clear();
Console.WriteLine("Ingrese el numero de la categoria a la que pertenece de la 1 a la 4 ");
categoria = int.Parse(Console.ReadLine());
Console.WriteLine(" ");
if (categoria> 0 &&categoria< 6)
{
Console.WriteLine(" Ingrese el numero de horas Laboradas en el mes: ");
horas = int.Parse(Console.ReadLine());
Console.WriteLine(" ");
switch (categoria)
{
case 1:
sal = 20000*horas;
break;
case 2:
sal = 15000*horas;
break;
case 3:
sal = 10000*horas;
break;
case 4:
sal = 7500*horas;

break;
default:
Console.WriteLine(" La categoria seleccionada no existe ");
break;
}
descuento = (sal * 7.2) / 100;
// aqui se valida si salario es menor a 1.000.000
if (sal < 1000000)
{
subsidio = sal * 0.15;
Console.WriteLine(" El salario sin descuento es: " + sal);
Console.WriteLine(" El valor del descuento es: " + descuento);
Console.WriteLine(" El valor del subsidio es : " + subsidio);
Console.WriteLine(" El salario Total es: "+ (sal+ subsidio - descuento));
Console.WriteLine(" ");
}
else {
Console.WriteLine(" El salario sin descuento es: " + sal);
Console.WriteLine(" El valor del descuento es: " + descuento);
Console.WriteLine(" El salario Total es: " + (sal-descuento));
Console.WriteLine(" El salario desvengado por usted es superior a 1000.000 no aplica
subsidio ");
Console.WriteLine(" ");
}}
Console.WriteLine(" Desea continuar? Si:1, No:2 ");
Console.WriteLine(" ");
Console.ReadKey();
} while (salir == 1);
Console.ReadKey();
}
}
}

PantallaVisual Studio Expresscon subsidio

PantallaVisual Studio Expresssin subsidio

________________________________

5. Elabore un programa que tenga cuatro niveles de seguridad (documntese sobre


niveles de seguridad) para un programa, si el usuario logra ingresar imprimir el
mensaje "Bienvenido", en caso contrario imprimir "Error clave" y el nivel del error
Algoritmo

PantallaVisual Studio Express

6. Escriba un programa para calcular si un nmero es primo o no, recuerde que los
nmeros primos son aquellos que solo son divisibles por la unidad y por ellos mismos:
ejemplo 5, 11, 17
Algoritmo
using System;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Threading.Tasks;
namespace Ejerc_6_TC_3_Num_primo
{
classProgram
{
staticvoid Main(string[] args)
{
//Nombre del Autor: xxxxxxxxxxxxxxxxxxxxxxxxxx//
//Fecha: 05 Mayo 2015
//Doy fe que este ejercicio es de mi autora, en caso de encontrar plagio la nota de todo mi
//trabajo debe ser de CERO adems de las respectivas sanciones a que haya lugar //
// 6. Escriba un programa para calcular si un nmero es primo o no,
// recuerde que los nmeros primos son aquellos que solo son divisibles por la unidad y por
ellos mismos: ejemplo 5, 11, 17
intnum, divisor = 2;
Console.WriteLine(" Dijite Un numero ");
num = int.Parse(Console.ReadLine());
Console.WriteLine(" ");
while (divisor<num)
{
while (num % divisor != 0)
divisor = divisor + 1;
if (num == divisor)
{
Console.WriteLine(" el numero " + num +" es un numero primo por que es divisible por el
mismo " );
}

else

{
Console.WriteLine(" el numero " + num + " No es Numero primo ");
Console.WriteLine(" ");
break;
}
}
Console.ReadKey();
}
}

PantallaVisual Studio Express con numero primo

PantallaVisual Studio Expresssin numero primo

________________________________
7. Lea los valores de los lados de un tringulo. Detecte y muestre un mensaje
correspondiente a su tipo (EQUILTERO, ISSCELES, O ESCALENO)
Algoritmo
using System;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Threading.Tasks;
namespace Ejerc_7_TC_3_Triangulo
{
classProgram
{
staticvoid Main(string[] args)
{
//Nombre del Autor: xxxxxxxxxxxxxxxxxxxxxxxxxx//
//Fecha: 05 Mayo 2015
//Doy fe que este ejercicio es de mi autora, en caso de encontrar plagio la nota de todo mi
//trabajo debe ser de CERO adems de las respectivas sanciones a que haya lugar //
// 7. Lea los valores de los lados de un tringulo.

// Detecte y muestre un mensaje correspondiente a su tipo (EQUILTERO, ISSCELES, O


ESCALENO)
double a = 0, b = 0, c = 0;
Console.WriteLine(" Ingrese el lado a Del Triangulo ");
a = int.Parse(Console.ReadLine());
Console.WriteLine(" ");
Console.WriteLine(" Ingrese el lado b Del Triangulo ");
b = int.Parse(Console.ReadLine());
Console.WriteLine(" ");
Console.WriteLine(" Ingrese el lado c Del Triangulo ");
c = int.Parse(Console.ReadLine());
Console.WriteLine(" ");
if (a == b && b == c )
Console.WriteLine(" Los Datos ingresados pertenecen a un triangulo EQUILATERO ");
else

{
if (a == b || a == c || b== c )
Console.WriteLine(" Los Datos ingresados pertenecen a un triangulo ISOCELES ");
else
{
Console.WriteLine(" Los Datos ingresados pertenecen a un triangulo ESCALENO ");
}}
Console.ReadKey ();
}

PantallaVisual Studio ExpressTriangulo Equilatero

PantallaVisual Studio Express Triangulo Isoceles

PantallaVisual Studio ExpressTriangulo Escaleno

_______________________________
8. Desarrolle un programa que permita seleccionar personal para un empleo de un
total de N aspirantes. Los aspirantes deben cumplir las siguientes condiciones para
ser aceptados:
Mayores de edad, Ser ingeniero titulado Tener experiencia laboral
Al final el programa debe mostrar el total de aspirantes aceptados
Algoritmo

PantallaVisual Studio Express

________________________________

9. Elaborar un programa que convierta un nmero entero positivo, menor a 257 a


sistema binario
Algoritmo

PantallaVisual Studio Express

________________________________
10. Dada tu fecha de nacimiento (mes, da, ao) indicar cuantos das (exactos) han
transcurrido desde ese ao.
Algoritmo
using System;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Threading.Tasks;
namespace Ejerc_10_TC_3_Calcular_Dias_Vivid
{
classProgram
{
privatestaticvoid Main(string[] args)
{
//Nombre del Autor: xxxxxxxxxxxxxxxxxxxxxxxxxx//
//Fecha: 06 Mayo 2015
//Doy fe que este ejercicio es de mi autora, en caso de encontrar plagio la nota de todo mi
//trabajo debe ser de CERO adems de las respectivas sanciones a que haya lugar //
// Dada tu fecha de nacimiento (mes, da, ao) indicar cuantos das (exactos)
// han transcurrido desde ese ao.
//Variables que usaremos para la fecha de nacimiento
intdia_nacimiento=0, mes_nacimiento=0, ao_nacimiento = 0;
Console.WriteLine(" ");
Console.WriteLine(" Escriba Su nombre ");

Console.WriteLine(" ");
stringnombre = Console.ReadLine();
while (true)
{
Console.WriteLine(" ");
Console.Write(" Dijite en numero su dia de nacimiento: ");
dia_nacimiento = int.Parse(Console.ReadLine());
if (dia_nacimiento< 1 || dia_nacimiento> 31)
Console.WriteLine(" Por favor, dijte los Numeros del dia en el rango entre 1 y 31 ");
else
//Si el dia es valido, entonces pasamos a pedir el mes
break;
}
while (true)
{
Console.Write(" Dijite en numero su Mes de nacimiento: ");
mes_nacimiento = int.Parse(Console.ReadLine());
if (mes_nacimiento< 1 || mes_nacimiento> 12)
Console.WriteLine("Por favor, dijte los Numeros del dia en el rango entre 1 y 12 ");
else
break;
}
while (true)
{
Console.Write(" Dijite en numero su Ao de nacimiento : ");
ao_nacimiento = int.Parse(Console.ReadLine());
if (ao_nacimiento< 1900 || ao_nacimiento>DateTime.Now.Year)
Console.WriteLine("Por favor, especifique un ao entre 1900 y el {0}", DateTime.Now.Year);
else
break;
}
int edad = DameEdad(dia_nacimiento, mes_nacimiento, ao_nacimiento);
Console.WriteLine(" ");
Console.WriteLine(" Hola " + nombre + ", usted en la actualidad tiene " + edad + " aos de
edad.");
Console.WriteLine(" ");
Console.ReadKey();
}
publicstaticintDameEdad(intdia, intmes, intao)
{
//Usamos la clase DateTime y un mtodo estatico para restar fechas
DateTimefecha_nacimiento = newDateTime(ao, mes, dia);
TimeSpan edad = DateTime.Now.Subtract(fecha_nacimiento);
return (edad.Days / 365);
}
}
}

PantallaVisual Studio Express

________________________________

11. Elabore un programa que genere un nmero aleatorio y que les d la posibilidad a
dos jugadores de adivinar dicho nmero, el algoritmo debe pedir el nmero de
partidas, intercalar los turnos para adivinar, mostrar el ganador por partida y el
ganador final. El nmero debe estar entre 0-100. (Use la funcin random.)
Algoritmo

PantallaVisual Studio Express

________________________________

12. Elabore un programa que lea las ventas de (n) nmero de vendedores, para los
productos (A, B, C, D y C), si los precios de los productos son ($1000, $2345, $3876,
$1235 y $550) respectivamente, calcule el nmero individual y total de productos
vendidos, las ventas totales por producto, el promedio total de ventas, el producto ms
vendido, el menos vendido, el vendedor que ms ventas realiz
Algoritmo

PantallaVisual Studio Express

________________________________

You might also like