GUIA No. 6 C# C# es un lenguaje orientado a ojetos (orientado a componentes) diseado para el CLR (Common Language Runtime) de la plataforma .NET. Para cargar Visual Studio .NET en modo comando se ha de seleccionar el boton de Iniciar, todos los programas, Microsoft visual Studio 2010 , Microsoft visual Studio 2010.
Para realizar un programa desde el IDE se han de realizar los siguientes pasos: 1. Crear un proyecto nuevo. Esto se puede hacer directamente al arrancar Visual Studio, pulsando con el mouse en el botn New Project, en la ventana inicial de la pgina de inicio ( File, New, Project).
UNIVERSIDAD DISTRITAL FRANCISCO JOS DE CALDAS FACULTAD DE INGENIERA PROYECTO CURRICULAR DE INGENIERA ELCTRICA PROGRAMACION BASICA
2. Elegir como tipo de proyecto Proyectos de Visual C# , como plantilla Console Application. Para dar el nombre all proyecto, coloque en la caja de texto Name, y decidir el lugar que ser almacenado (Caja de texto Location).
UNIVERSIDAD DISTRITAL FRANCISCO JOS DE CALDAS FACULTAD DE INGENIERA PROYECTO CURRICULAR DE INGENIERA ELCTRICA PROGRAMACION BASICA
UNIVERSIDAD DISTRITAL FRANCISCO JOS DE CALDAS FACULTAD DE INGENIERA PROYECTO CURRICULAR DE INGENIERA ELCTRICA PROGRAMACION BASICA
Se crea una clase program, que es la que debe implementar la funcionalidad y que posee un mtodo Main() y un constructor. La pestaa program.cs, queda as:
using
System;
//Espacio
de
Nombres
namespace
using
System.Collections.Generic;
//Espacio
de
Nombres
namespace
using
System.Text;
//Espacio
de
Nombres
namespace
namespace
ApplicationSaludo
{
class
Program
{
static
void
Main(string[]
args)
{
}
}
}
Espacio de Nombres namespace: es una agrupacin lgica. De este modo, al escribir el cdigo de una aplicacin y utilizar clases y otros tipos se ha de indicar (en el cdigo) el namespace a que pertenecen tales tipos. Se puede utilizar la palabra clave using a fin de que no se requiera el nombre completo, de la manera siguiente:
using
System;
System System.Collections Tipos Bsicos Colecciones
Los namespace: Organizan proyectos de cdigo de gran tamao. El operador . delimita los espacios de nombres. La palabra clave using directive significa que no se necesita especificar el nombre del espacio de nombres para cada clase. El espacio de nombres global es el espacio de nombres "raz": global::system siempre har referencia al espacio de nombres System de .NET Framework.
UNIVERSIDAD DISTRITAL FRANCISCO JOS DE CALDAS FACULTAD DE INGENIERA PROYECTO CURRICULAR DE INGENIERA ELCTRICA PROGRAMACION BASICA
4. Escriba el siguiente ejemplo, que muestra diferentes modos de escribir el programa Hola a todos. Adicionando al programa las siguientes lneas de cdigo:
Console.WriteLine("Hola
a
todos");
//Salida
de
datos
Console.ReadKey();
Quedando as el programa:
using
System;
//Espacio
de
Nombres
namespace
using
System.Collections.Generic;
//Espacio
de
Nombres
namespace
using
System.Text;
//Espacio
de
Nombres
namespace
namespace
ApplicationSaludo
{
class
Program
{
static
void
Main(string[]
args)
{
Console.WriteLine("Hola
a
todos");
//Salida
de
datos
Console.ReadKey();
}
}
}
Ahora se puede omitir colocar al inicio el namespace using
System;,
pero es
System.Console.WriteLine("Hola
a
todos");
using
System.Collections.Generic;
//Espacio
de
Nombres
namespace
using
System.Text;
//Espacio
de
Nombres
namespace
namespace
ApplicationSaludo
{
class
Program
{
static
void
Main(string[]
args)
{
System.Console.WriteLine("Hola
a
todos");
//Salida
de
datos
System.Console.ReadKey();
}
}
}
UNIVERSIDAD DISTRITAL FRANCISCO JOS DE CALDAS FACULTAD DE INGENIERA PROYECTO CURRICULAR DE INGENIERA ELCTRICA PROGRAMACION BASICA
System es un espacio de nombres y Console es una clase incluida en ese espacio de nombres. Cualquier mtodo Main debe estar incluido dentro de una clase (Hello1 en este caso). La clase System.Console contiene un mtodo WriteLine que se puede utilizar para mostrar una cadena en la consola. 5. Se compila con la opcin Build, Build Solution, desde la barra de menu, y no debe aparecer ningn error.
UNIVERSIDAD DISTRITAL FRANCISCO JOS DE CALDAS FACULTAD DE INGENIERA PROYECTO CURRICULAR DE INGENIERA ELCTRICA PROGRAMACION BASICA
6. Cree una nueva clase. Realice el ejemplo, ubicandose en la barra de men File, seleccione New, File, Visual C# class. Ejemplo 2
//
Declaracin
del
espacio
de
nombres
using
System;
//
Clase
que
inicia
el
programa
class
InteractiveWelcome
{
//
inicia
la
ejecucin
del
programa
principal
static
void
Main()
{
//
Escribe
en
consola/Obtiene
entrada
Console.Write("Cul
es
su
nombre?:
");
string
name
=
Console.ReadLine();
Console.Write("Hello,
{0}!
",
name);
//
Mantiene
la
pantalla
Console.ReadLine();
}
}
Cul es la diferencia?
UNIVERSIDAD DISTRITAL FRANCISCO JOS DE CALDAS FACULTAD DE INGENIERA PROYECTO CURRICULAR DE INGENIERA ELCTRICA PROGRAMACION BASICA
UNIVERSIDAD DISTRITAL FRANCISCO JOS DE CALDAS FACULTAD DE INGENIERA PROYECTO CURRICULAR DE INGENIERA ELCTRICA PROGRAMACION BASICA
Cul es la diferencia?
Ejemplo 4
//Lee
un
carcter
y
devuelve
su
valor
en
ASCII
using
System;
using
System.Collections.Generic;
using
System.Text;
namespace
ConsoleApplication4
{
class
Program
{
static
void
Main(string[]
args)
{
Console.WriteLine("Ingrese
el
caracter:
");
int
caracternum
=
Console.Read();
Console.WriteLine(caracternum);
//Console.WriteLine("Escribe:
{0}",caracternum);
Console.ReadKey();
}
}
}
Conversiones de tipos de datos Ahora si se desea obtener e imprimir el carcter , es necesario realizar una conversin del tipo de dato, ya que la funcin Read(), devuelve un entero. Utilizando la clase Convert
using
System;
using
System.Collections.Generic;
using
System.Text;
namespace
ConsoleApplication4
{
class
Program
{
static
void
Main(string[]
args)
{
Console.WriteLine("Ingrese
el
caracter:
");
char
caracter
=
Convert.ToChar(
Console.Read());
Console.WriteLine(caracter);
//Console.WriteLine("Escribe:
{0}",caracter);
UNIVERSIDAD DISTRITAL FRANCISCO JOS DE CALDAS FACULTAD DE INGENIERA PROYECTO CURRICULAR DE INGENIERA ELCTRICA PROGRAMACION BASICA
Console.ReadKey();
}
}
}
Ejemplo 5
UNIVERSIDAD DISTRITAL FRANCISCO JOS DE CALDAS FACULTAD DE INGENIERA PROYECTO CURRICULAR DE INGENIERA ELCTRICA PROGRAMACION BASICA
Console.WriteLine("La
suma
de
{0}
+
{1}
es
:
{2}",
numero1,numero2,
(numero1+numero2));
Console.WriteLine("La
suma
de
los
nmeros
es
:
"
+(numero1
+
numero2));
Console.ReadKey();
}
}
}
Ahora al mismo programa le reallizar algunos cambios: crea una variable suma que realice la operacin y muestre el resultado.
using
System;
using
System.Collections.Generic;
using
System.Text;
namespace
ConsoleApplication4
{
class
Program
{
static
void
Main(string[]
args)
{
Console.WriteLine("Ingrese
el
primer
numero:
");
int
numero1
=
Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Ingrese
el
segundo
numero:
");
int
numero2
=
Convert.ToInt32(Console.ReadLine());
int
suma
=
numero1+numero2;
Console.WriteLine("La
suma
de
los
nmeros
es
:
"
+suma);
Console.ReadKey();
}
}
}
UNIVERSIDAD DISTRITAL FRANCISCO JOS DE CALDAS FACULTAD DE INGENIERA PROYECTO CURRICULAR DE INGENIERA ELCTRICA PROGRAMACION BASICA
static
void
Main(string[]
args)
{
//Las
variables
se
declaran
as:
int
entero;
float
flotante;
double
doble;
char
caracter;
string
cadena;
bool
booleano
;
//Se
le
asigna
un
valor
a
las
variables
entero
=
5;
flotante=
5.4f;
doble=
5.6;
caracter
=
'a';
cadena
=
"Ricardo";
booleano
=
false;
Console.WriteLine("entero:
"
+
entero.ToString()
+
"\nflotante:
"
+
flotante.ToString()
+
"\ndouble:
"
+
doble.ToString()
+
"\nchar:
"
+
caracter.ToString()
+
"\nbooleano:
"
+
booleano.ToString());
Console.ReadKey();
}
}
}
UNIVERSIDAD DISTRITAL FRANCISCO JOS DE CALDAS FACULTAD DE INGENIERA PROYECTO CURRICULAR DE INGENIERA ELCTRICA PROGRAMACION BASICA
}
}
}
Ejemplo 8
using
System.Text;
namespace
ConsoleApplication4
{
class
Program
{
static
void
Main(string[]
args)
{
Console.Write("Ingrese
el
radio
del
crculo:
");
int
radio
=
Convert.ToInt32(Console.ReadLine());
float
area
=
3.14f
*
radio
*
radio;
Console.WriteLine("El
rea
del
crculo
de
radio
{0}
es
{1}
",
radio,area);
Console.ReadKey();
}
}
}
Ejemplo 9
using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication4 { class Program { static void Main(string[] args) { int dato1, dato2, resultado; dato1=20; dato2=10; //suma resultado = dato1 +dato2; Console.WriteLine(dato1 + " + " + dato2 + " = " + resultado); //resta resultado = dato1 - dato2;
UNIVERSIDAD DISTRITAL FRANCISCO JOS DE CALDAS FACULTAD DE INGENIERA PROYECTO CURRICULAR DE INGENIERA ELCTRICA PROGRAMACION BASICA
Console.WriteLine(dato1
+
"
-
"
+
dato2
+
"
=
"
+
resultado);
//multiplicacin
resultado
=
dato1
*
dato2;
Console.WriteLine(dato1
+
"
*
"
+
dato2
+
"
=
"
+
resultado);
//divisin
resultado
=
dato1
/
dato2;
Console.WriteLine(dato1
+
"
/
"
+
dato2
+
"
=
"
+
resultado);
//mdulo
resultado
=
dato1
%
dato2;
Console.WriteLine(dato1
+
"
%"
+
dato2
+
"
=
"
+
resultado);
Console.ReadKey();
}
}
}
Ahora
usted
puede
asignar
un
alias
desde
la
directiva
de
using,
cree
una
variable
c
y
asigne
System.Console;,
y
luego
cambie
la
instruccin
Console
por
c,
en
cada
salida
de
datos.
using
System;
using
System.Collections.Generic;
using
System.Text;
using
c
=
System.Console;
namespace
ConsoleApplication4
{
class
Program
{
static
void
Main(string[]
args)
{
int
dato1,
dato2,
resultado;
dato1=20;
dato2=10;
//suma
resultado
=
dato1
+dato2;
c.WriteLine(dato1
+
"
+
"
+
dato2
+
"
=
"
+
resultado);
//resta
resultado
=
dato1
-
dato2;
c.WriteLine(dato1
+
"
-
"
+
dato2
+
"
=
"
+
resultado);
//multiplicacin
resultado
=
dato1
*
dato2;
UNIVERSIDAD DISTRITAL FRANCISCO JOS DE CALDAS FACULTAD DE INGENIERA PROYECTO CURRICULAR DE INGENIERA ELCTRICA PROGRAMACION BASICA
c.WriteLine(dato1
+
"
*
"
+
dato2
+
"
=
"
+
resultado);
//divisin
resultado
=
dato1
/
dato2;
c.WriteLine(dato1
+
"
/
"
+
dato2
+
"
=
"
+
resultado);
//mdulo
resultado
=
dato1
%
dato2;
c.WriteLine(dato1
+
"
%"
+
dato2
+
"
=
"
+
resultado);
c.ReadKey();
}
}
}
Al ejercicio 9, realice la captura de los datos, y pruebe con los datos 5 y 2, que resultado arroja.
UNIVERSIDAD DISTRITAL FRANCISCO JOS DE CALDAS FACULTAD DE INGENIERA PROYECTO CURRICULAR DE INGENIERA ELCTRICA PROGRAMACION BASICA
Ejercicios Escribir el cdigo fuente con la sintaxis de C# Se ingresan desde teclado 2 nmeros enteros, mostrar en pantalla la sumatoria de ambos. Se ingresa un nmero entero, elevarlo al cuadrado y mostrarlo en pantalla. Dado un nmero entero ingresado determinar y mostrarlo en pantalla si el mismo es positivo o negativo. Se ingresan dos nmeros desde teclado, informar el menor Se ingresan desde teclado 5 enteros, contar e informar los que son mayores de 5. Se ingresan desde teclado 5 enteros, mostrar en pantalla la sumatoria de los que son mayores de 150 Disear un programa que permita ingresar una letra y determinar si la misma es una vocal o consonante Realice un programa en C# que imprime en pantalla todos los nmeros impares de tres cifras desde el 100 hasta el 500. Se ingresa la edad de la persona, informar el ao en que naci Se ingresan temperaturas de cada da de la semana. Informar la cantidad de das con temperaturas mayores a 11,5 grados y el porcentaje de temperaturas bajo cero.