Hola que tal, ya ha pasado tiempo desde que puse mi ultimo post de Java, pero ahora en el instituto estamos viendo Programacion Orientada a Objetos pero ahora con C#, les dejo un pequeño ejemploque cuenta con herencia simple donde el programa hace uso del Main para invocar este otro, de todas maneras si yienen dudas por parte de Java estoy a sus ordenes al igual para C#, Cabe mencionar que estos dos lenguajes son muy similares pero cada uno tiene su chiste.
Program.cs donde se encuentra el Main
using System;
namespace Proyecto1
{
class Program
{
public static void Main(string[] args)
{
Master obj1=new Master(0,0,0) ;
int a = 1 ;
int b ;
int c ;
int d ;
int e ;
int f = 0;
int g ;
do{
Console.WriteLine("que deseas hacer?" ) ;
Console.WriteLine("1 = Operaciones basicos" ) ;
Console.WriteLine("2 = Piramide de Pascal" ) ;
Console.WriteLine("3 = Piramide de asteriscos" ) ;
Console.WriteLine("4 = Factorial de un numero" ) ;
Console.WriteLine("0 = Salir" ) ;
a = int.Parse( Console.ReadLine()) ;
switch (a)
{
case 1:
//Operaciones Basicas
Console.WriteLine("Operaciones Basicas" ) ;
Console.WriteLine("dame el primer numero" ) ;
b = int.Parse( Console.ReadLine()) ;
obj1.setNum1(b) ;
Console.WriteLine("dame el segundo numero" ) ;
c = int.Parse( Console.ReadLine()) ;
obj1.setNum2(c) ;
Console.WriteLine("que operacion deseas hacer?" ) ;
Console.WriteLine("1 = Suma" ) ;
Console.WriteLine("2 = Resta" ) ;
Console.WriteLine("3 = Multiplicacion" ) ;
Console.WriteLine("4 = Divicion" ) ;
Console.WriteLine("5 = Area de triangulo" ) ;
Console.WriteLine("Dame la operacion" ) ;
d = int.Parse( Console.ReadLine()) ;
obj1.setRes(d) ;
obj1.operacion() ;
break;
case 2:
//Pascal
Console.WriteLine("dame el coeficiente" ) ;
b = int.Parse( Console.ReadLine()) ;
obj1.setNum1(b) ;
obj1.Pascal() ;
break;
case 3:
//Piramide
Console.WriteLine("dame el nivel de la piramide" ) ;
e = int.Parse(Console.ReadLine()) ;
obj1.setNum1(e) ;
Console.WriteLine("Verion 1 = Normal, 2 = Centrada, 3 = las dos formas" ) ;
g = int.Parse(Console.ReadLine()) ;
switch (g)
{
case 1:
obj1.ast() ;
break;
case 2:
obj1.ast1() ;
break;
case 3:
obj1.ast();
Console.WriteLine("" ) ;
obj1.ast1();
break;
}
break;
case 4:
//Factorial de un numero
Console.WriteLine("dame un numero para el factorial" ) ;
f = int.Parse(Console.ReadLine()) ;
obj1.setNum1(f) ;
obj1.fact() ;
break;
}
}while (a!=0) ;
}
}
}
Master.cs al que le vamos a hablar
using System;
namespace Proyecto1
{
class Master
{
private int num1;
private int num2;
private int res;
public Master(int a, int b, int c)
{
num1=a;
num2=b;
res=c;
}
public void setNum1(int a)
{
num1 = a;
}
public int getNum1()
{
return num1;
}
public void setNum2(int b)
{
num2 = b;
}
public int getNum2()
{
return num2;
}
public void setRes(int c)
{
res = c;
}
public int getRes()
{
return res;
}
public void operacion(){
int resultado = 0;
switch (res)
{
case 1:
resultado = num1 + num2;
Console.WriteLine(num1+" + "+num2+" = "+resultado) ;
break;
case 2:
resultado = num1 - num2;
Console.WriteLine(num1+" - "+num2+" = "+resultado) ;
break;
case 3:
resultado = num1 * num2;
Console.WriteLine(num1+" x "+num2+" = "+resultado) ;
break;
case 4:
resultado = num1 / num2;
Console.WriteLine(num1+ " / "+num2+" = "+resultado) ;
break;
case 5:
resultado = (num1 * num2)/2;
Console.WriteLine( " ( " +num1+" x "+num2+" ) /2 = "+resultado) ;
break;
}
}
public void Pascal()
{
int con1 = 0,con2;
for(int con3=0; con3<=num1+1;con3++)
{
Console.Write(" " ) ;
}
Console.WriteLine(1) ;
while(con1<num1)
{
con2=con1+1;
for(int con3=0; con3<=num1-con1;con3++)
{
Console.Write(" " ) ;
}
for(int con3=0; con3<=con2;con3++)
{
est(con2,con3);
}
Console.WriteLine("" ) ;
con1++;
}
}
public void est(int con4, int con5){
int R;
R = fa2(con4)/(fa2(con5)*fa2(con4-con5)) ;
Console.Write(R+" " ) ;
}
public int fa2(int valor){
int fac = 1 ;
if(valor != 0)
for(int i=1; i<=valor; i++ )
fac = fac*i ;
return fac;
}
public void ast(){
for(int i1 = 0; i1 <= num1 ; i1++ )
{
for(int i2 = 0; i2 < i1 ; i2++)
{
Console.Write("*" ) ;
}
Console.WriteLine(" " ) ;
}
Console.WriteLine(" " ) ;
}
public void ast1()
{
int con1 = 0,con2 ;
for(int con3=0; con3<=num1+1;con3++)
{
Console.Write(" " ) ;
}
Console.WriteLine("*" ) ;
while(con1<num1)
{
con2=con1+1;
for(int con3=0; con3<=num1-con1;con3++)
{
Console.Write(" " ) ;
}
for(int con3=0; con3<=con2;con3++)
{
est1(con2,con3);
}
Console.WriteLine("" ) ;
con1++;
}
}
public void est1(int con4, int con5){
int R;
R = fa21(con4)/(fa2(con5)*fa2(con4-con5)) ;
Console.Write("*"+" " ) ;
}
public int fa21(int valor){
int fac = 1 ;
if(valor != 0)
for(int i=1; i<=valor; i++)
fac = fac*i ;
return fac;
}
public void fact(){
int R = 1 ;
for(int con = 2; con <= num1; con++)
{
R = Math.Abs(R * con) ;
}
Console.WriteLine("el factorialn es = "+R) ;
}
}
}
Si tienen duda estoy a su servicio
El conocimiento es libre