none
como elevar un numero en c#.net, me explico

    Pregunta

  • tengo la siguiente operacion

     

    public double eleva(double n,double p)

    {

    double n, p, res;

    res= n ^ p;

    return res;

    }

    vueno me tira un error por que el operador ^  dice que se usa con valores booleanos

    en visual basic funciona  pero en c# no

    alguna respuesta gacias de antemano

     

     

    miércoles, 27 de septiembre de 2006 3:00

Todas las respuestas

  • (te pongo la misma respuesta de antes :D)

     

    Buenas

    lo que sucede es que los operadores son diferentes en VB.Net y en C#.

    Si en Vb.Net tienes por ejemplo

     

    Dim i as integer
    i = 1 ^ 8

    cuando lo "traduces" a C# quedaría

     

    int i;
    private object i = Math.Pow(1, 8);

     

    te recomiendo que veas esta comparacion entre ambos lenguages

    http://www.harding.edu/USER/fmccown/WWW/vbnet_csharp_comparison.html

    o si ya conoces vb.net y quieres empezar a traducir a "C#" puedes utilizar esta web http://www.developerfusion.co.uk/utilities/convertvbtocsharp.aspx

     

    Saludos

    El Bruno

    miércoles, 27 de septiembre de 2006 7:44
  •  

    Ciertamente en visual basic se utiliza ^ para elever un numero a una potencia, pero en C# significa lo siguiente:

    Los operadores binarios ^ están predefinidos para tipos integrales y bool. Para los tipos integrales, ^ calcula la operación OR exclusiva bit a bit de sus operandos. Para los operandos bool, ^ calcula la operación OR exclusiva lógica de sus operandos; es decir, el resultado es true si, y sólo si, exactamente uno de sus operandos es true.

    Para elevar a una potencia en C# debes utilizar lo siguiente:

    Math.Pow(numeroAElevar, potencia);

    Puedes ecnotrar la referecia en:

    http://msdn2.microsoft.com/en-us/library/system.math.pow.aspx

    Asi como del resto de motodos de la clase Math en:

    http://msdn2.microsoft.com/en-us/library/system.math_methods.aspx

    Saludos, y espero haberte sido de ayuda.

    Javier Conesa.

    miércoles, 27 de septiembre de 2006 7:56
    Moderador
  • Hola como estan....

     

    necesito que alguien me ayude con problemita que tengo con la siguiente funcion...

     

     int result;
          result=a ^ b;
          return result;

     

    la cuestion es que en cambio de elevarlo a potencia lo resta y quiciera saber si hay alguien que me pudiera ayudar.

     

    jonathan900716@hotmail.com

    martes, 15 de mayo de 2007 3:21
  • algo tarde la repuesta... lose....


    pero a ti no te funciona sencillamente porque el operador ^ no es el operador de potenciacion , es el operador de XOR binario...



    http://msdn2.microsoft.com/en-us/library/zkacc7k1(VS.80).aspx

    no hay operador de poteciacion, para eso debes utilizar System.Math.Pow
    domingo, 20 de enero de 2008 16:31
  • \\::::::Bueno aqui les dejo mis codigos espero que les sirva, cualquier consulta haganmela saber. khck20@gmail.com :::

    using System;
    using System.Collections.Generic;
    using System.Text;

    namespace ConsoleApplication3
    {
        class Class1
        {
            static void Main(string[] args)
            {
                Console.Title = "Algoritmo Raíces  Cuadráticas ";
               
                double raiz1,raiz2,a, b, c;
                
                
                Console.WriteLine("Ingrese coeficiente 1: ");
                a = Int32.Parse(Console.ReadLine());//lee coeficiente 1que en este caso es a y lo convierte a entero
                Console.WriteLine("Ingrese coeficiente 2: ");
                b = Int32.Parse(Console.ReadLine());//lee coeficiente 2 que en este caso es b y lo convierte a entero
                Console.WriteLine("Ingrese término Independiente: ");
                c = Int32.Parse(Console.ReadLine());//lee termino independiente que en este caso es c y lo convierte a entero

                if (a == b && b == c)
                {
                    Console.WriteLine("No tiene soluciones Reales");
                }
                    
                else
                {
                    raiz1 = (-(b) + (Math.Sqrt(Math.Pow(b,2) - 4 * (a) * (c)))) / 2 * (a);
                    raiz2 = (-(b) - (Math.Sqrt(Math.Pow(b,2) - 4 * (a) * (c)))) / 2 * (a);

                    Console.WriteLine("Las Raizes son: " + "\n" + raiz1 + " y " + raiz2);

                }//HAROLDXITO "ISIS-UAP-ICA"
                
                Console.ReadKey();
              
            } 
        }
    }  

    sábado, 13 de diciembre de 2008 7:43