Professional Documents
Culture Documents
(DS-DPRN1-1602-B1-001)
Actividad 2.
Tipos de datos y operadores.
Elaborado por:
Jos Antonio Casales Daz.
Matricula: ES1511104179
Presentado a la Tutora.
LILIANA CORONA GRANADOS.
Universidad Nacional Abierta y a
Distancia UNADM
Qu es un Operador?
Cuando nos referimos a un operador es a un elemento que se aplica una o
varias veces en una instruccin, los operadores que necesitan un operando,
como el operador de incremento y son operadores unarios.
Los operadores que emplean dos operandos son operadores binarios.
Los operadores condicionales empelan a tres operandos.
Los operadores segn su funcin son:
Aritmticos
Relacionales
De Asignacin
Lgicos
De direccin
Manejo de Bit
Operador
=
*=
/=
+=
-=
%=
<<=
>>=
&=
^=
|=
Accin
Asignacin bsica
Asigna producto
Asigna divisin
Asigna suma
Asigna resta
Asigna modulo
Asigna desplazamiento izquierda
Asigna desplazamiento derecha
Asigna ADN entre bits
Asigna XOR entre bits
Asigna OR entre bits
Accin
Resta
Suma
Multiplicacin
Divisin
Mdulo
Decremento
Incremento
Operador
<
>
<=
>=
==
=
Relacin
Menor
Mayor
Menor o igual
Mayor o igual
Igual
Diferente
Accin
ADN Lgico
OR Lgico
Negacin Lgica
Relacin
Desplazamiento a izquierda
Desplazamiento a derecha
Complemento
ADN
XOR
OR
Nombre
Deferencia o indireccin
Referencia o direccin
Indireccion de puntero a miembro
Indireccin de puntero a clase
Operadores Principales C#
Operad
or
(smbol
o)
Operador (descripcin)
Clasificac
in
x.y:
Acceso a miembros.
Aritmtico
s
x?.y:
Acceso
a
miembros
condicional null. Devuelve null
si el operando izquierdo es
null.
Relacional
f(x):
Invocacin de funcin.
Aritmtico
s
a[x]:
Relacional
a?[x]:
Relacional
x++:
Incremento
de
postfijo.
Devuelve el valor de x y, a
continuacin,
actualiza
la
Lgicos
Ejemplo de Aplicacin
// The class Console in namespace
System:
System.Console.WriteLine("hello");
int? length = customers?.Length; //
null if customers is null
Customer first = customers?[0]; //
null if customers is null
double x = 1234.7;
int a;
a = (int)x; // Cast double to int
int[] fib; // fib is of type int[], "array
of int".
fib = new int[100]; // Create a 100element int array.
int? length = customers?.Length; //
null if customers is null
Customer first = customers?[0]; //
null if customers is null
int? count = customers?
[0]?.Orders?.Count(); // null if
customers, the first customer, or
Orders is null
//++ operator
class MainClass
{
ubicacin de almacenamiento
con el valor de x que es uno
mayor.
}
/*
Output
2.5
1.5
2.5
*/
class MainClass5
{
static void Main()
{
double x;
x = 1.5;
Console.WriteLine(--x);
x = 1.5;
Console.WriteLine(x--);
Console.WriteLine(x);
}
}
/*
Output:
0.5
1.5
0.5
*/
x--:
Decremento
de
postfijo.
Devuelve el valor de x; a
continuacin,
actualiza
la
ubicacin de almacenamiento
con el valor de x que es uno
menos.
Lgicos
New:
Aritmtico
s
Relacional
Relacional
Typeof:
Checked:
Devuelve
el
objeto
System.Type que representa el
operando.
Habilita la comprobacin de
desbordamiento
para
operaciones con enteros.
Uncheck
ed:
default(T
):
Deshabilita la comprobacin
de
desbordamiento
para
operaciones con enteros. Este
es
el
comportamiento
predeterminado
del
compilador.
Devuelve el valor inicializado
predeterminado de tipo T, null
para tipos de referencia, cero
para tipos numricos y cero o
null en miembros para tipos
de struct.
Relacional
Lgico
}
}
// T is the type of data stored in a particular
instance of GenericList.
public class GenericList<T>
{
private class Node
{
// Each node has a reference to the next
node in the list.
public Node Next;
// Each node holds a value of type T.
public T Data;
}
// The list is initially empty.
private Node head = null;
// Add a node at the beginning of the list with
t as its data value.
public void AddNode(T t)
{
Node newNode = new Node();
newNode.Next = head;
newNode.Data = t;
head = newNode;
}
// The following method returns the data
value stored in the last node in
// the list. If the list is empty, the default
value for type T is
// returned.
public T GetLast()
{
// The value of temp is returned as the
value of the method.
// The following declaration initializes temp
to the appropriate
// default value for type T. The default
value is returned if the
// list is empty.
T temp = default(T);
Node current = head;
while (current != null)
{
temp = current.Data;
current = current.Next;
}
return temp;
}
}
}
Delegate
:
Declara
y
devuelve
instancia de delegado.
una
Relacional
void StartThread()
{
System.Threading.Thread t1 =
new System.Threading.Thread
(delegate()
{
System.Console.Write("Hello, ");
Sizeof:
Relacional
System.Console.WriteLine("World!");
});
t1.Start();
}
// Constant value 4:
int intSize = sizeof(int);
// compile with: /unsafe
struct Point
{
public int x, y;
}
->:
Tipo
de
dato
byte
sbyte
short
Clase C#
Indica un tipo integral que
almacena valores
Indica un tipo integral que
almacena
valores
de
acuerdo con el tamao y el
rango: -128 to 127 Entero
de 8 bits.
Denota un tipo de datos
integral
que
almacena
valores de acuerdo con el
Lgico
class MainClass12
{
unsafe static void Main()
{
Point pt = new Point();
Point* pp = &pt;
pp->x = 123;
pp->y = 456;
Console.WriteLine("{0} {1}",
pt.x, pt.y);
}
}
/*
Output:
123 456
*/
Tipo de datos C#
Rango
de
Ejemplo de declaracin
valores
Sbyte o
byte x = 10, y = 20;
char
byte ,
ushort,
public static void SampleMethod(int i) {}
uint,
public static void SampleMethod(sbyte b) {}
ulong o
char
sbyte , public static void SampleMethod(int i) {}
byte,
public static void SampleMethod(short s) {}
ushort,
ushort
int
unit
long
9,223,372,036,854,775,80
8
to
9,223,372,036,854,775,80
7 Entero de 64 bits
ulong
char
uint,
ulong o
char
sbyte ,
byte,
short o
char
sbyte ,
byte,
short,
ushort,
uint,
ulong,o
char
sbyte ,
byte,
short,
ushort,
int o
char
sbyte ,
byte,
short,
ushort,
int, uint,
ulong o
char
sbyte ,
byte,
short,
ushort,
int, uint,
long o
char
sbyte ,
byte o
short
Console.WriteLine(44U.GetType());
Console.WriteLine(323442434344U.GetType(
));
Console.WriteLine(9223372036854775808L.
GetType());
Console.WriteLine(123UL.GetType());
Console.WriteLine((123UL +
456).GetType());
char[] chars = new char[4];
chars[0]
chars[1]
chars[2]
type
chars[3]
= 'X';
// Character literal
= '\x0058'; // Hexadecimal
= (char)88; // Cast from integral
= '\u0058'; // Unicode
representar la mayora de
los idiomas escritos en
todo el mundo. Su rango
U+0000 to U+FFFF Su
tamao
de
caracteres
Unicode de 16 bits
float
double
decim
al
sbyte ,
byte,
short,
ushort,
int, uint,
long,
ulong,
char o
decimal
sbyte ,
byte,
short,
ushort,
int, uint,
long,
ulong,
char,
float o
decimal
sbyte ,
byte,
short,
ushort,
int, uint,
class FloatTest
{
static void Main()
{
int x = 3;
float y = 4.5f;
short z = 5;
var result = x * y / z;
Console.WriteLine("The result is {0}",
result);
Type type = result.GetType();
Console.WriteLine("result is of type
{0}", type.ToString());
}
}
/* Output:
The result is 2.7
result is of type System.Single //'float' is
alias for 'Single'
*/
// Mixing types in expressions
class MixedTypes
{
static void Main()
{
int x = 3;
float y = 4.5f;
short z = 5;
double w = 1.7E+3;
// Result of the 2nd argument is a
double:
Console.WriteLine("The sum is {0}", x
+ y + z + w);
}
}
// Output: The sum is 1712.5
double dub = 9;
// The following line causes an error that
reads "Operator '+' cannot be applied to
// operands of type 'double' and 'decimal'"
Console.WriteLine(dec + dub);
rango ms pequeo , lo
que
hace
que
sea
adecuada para los clculos
financieros y monetarios.
Rango aproximado (-7.9 x
1028 to 7.9 x 1028) / (100
to 28) Precisin
28-29 dgitos significativos
long,
ulong,
char,
float o
double
Conversin
Tipos
Conversiones Implcitas
Conversiones explicitas
Descripcin
En los tipos numricos integrados, pude realizarse una
conversin implcita cuando el valor que se va a almacenar
puede ajustar a la variable sin necesidad de truncamiento o
redondeo. Ejemplo:
Una variable de tipo long (entero de 8 bytes) puede
almacenar cualquier valor que pueda almacenar a su vez un
elemento int (4 bytes en un equipo de 32 bits).
El compilador convierte implcitamente el valor de la derecha
en un tipo long antes de asignarlo a bigNum.
// Implicit conversion. num long can
// hold any value an int can hold, and more!
int num = 2147483647;
long bigNum = num;
Sin embargo, si no se puede realizar una conversin sin
riesgo de perder informacin, el compilador requiere que se
realice una conversin explcita, denominada conversin de
tipo. Una conversin de tipo es una manera de informar al
compilador de forma explcita de que pretende realizar la
conversin y que est al tanto de que puede producirse una
prdida de datos. Para realizar una conversin de tipo,
especifique entre parntesis el tipo al que se va a aplicar
dicha conversin delante del valor o la variable que se va a
convertir. El programa siguiente convierte un tipo double a un
tipo int. El programa no se compilar sin el operador de
conversin de tipo.
class Test
{
static void Main()
{
double x = 1234.7;
int a;
// Cast double to int.
a = (int)x;
System.Console.WriteLine(a);
}
Bibliografa:
UNADM. (2016). Unidad 1 Introduccion a .NET. 2016, de UNADM Sitio web:
https://unadmexico.blackboard.com/bbcswebdav/institution/DCEIT/2016_S2_B1/
DS/05/DPRN1/U1/Unidad_1_Introduccion_a_NET.pdf
Microsoft. (2016). Developer Network. 2016, de Microsoft Sitio web:
https://msdn.microsoft.com/en-us/default.aspx