• Jueves 25 de Abril de 2024, 12:41

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - daniel44

Páginas: [1]
1
C# / Re: Problema Con Clases
« en: Sábado 31 de Mayo de 2008, 17:16 »
Cita de: "dlg89"
ok, creo que lo e entendido bastante bien
ç
gracias


otra duda que tengo es en vectores y matrices lo siguiente;

cuando ponermos :
para vectores

for(int i=0; i<V.Length;i++)
{
s+=V;

para matrices:


for(int =0;i<m.GetLegth(0);i++)
{
for(int c=0; c<m.Length(1);c++)
{
s+=m[i,c];

mi duda es para que se emplea el Length y GetLength(matrices)???


graciasy perdonar por ser tan pesado
La propiedad .length es el tamaño del arreglo, es decir, si en un arreglo de tamaño 3 pusieras 'array.length', t referirias a el valor 3.
La propiedad GetLength es bastante similar, solo que usa un parametro. Cuando usas GetLength(0) tomas la medida de las filas del arreglo, y cuando usas GetLength(1) tomas la medida de las columnas del arreglo.
Ej
int [] array = new int [6]
Si usas array.Length sera el valor 6

int [,] arrayx = new int [3,4]
Si usas arrayx.GetLength(0) el valor sera 3
Si usas arrayx.GetLength(1) el valor sera 4

2
C# / Re: Metodos Numericos En C#
« en: Lunes 26 de Mayo de 2008, 01:27 »
Cita de: "dlg89"
hola de nuevo

como hago entonces para declarar la variable x, y que valor le doi
Pues.. la x la declaras solo con un
double x;
El valor depende de tu programa. Tal vez te sirva este enlace
http://es.wikipedia.org/wiki/Método_de_bisección

3
C# / Re: Metodos Numericos En C#
« en: Domingo 25 de Mayo de 2008, 21:05 »
Cita de: "dlg89"
ok, muchas gracias daniel :D
dime si lo que e puesto esta bien, lo de resultado

ahora despuesde hacer lo que dices, lo compilo todo pero me aparece un eror que no se arreglar que dice exactamente "El nombre 'x' no existe en el contexto actual"   
y no se como arreglarlo

Código: Text
  1. using System;
  2.  
  3. class metodo
  4. {
  5.  
  6.     static double F(double x)
  7.     {
  8.         return x * x - 100;
  9.     }
  10.     static double BISECCION(double A, double B, int N)
  11.     {
  12.         double FA = F(x), Fpm, pm;
  13.         do
  14.         {
  15.             pm = (A + B) / 2;
  16.             Fpm = F(pm);
  17.             if (Fpm != 0 && FA * Fpm &#62; 0)
  18.             {
  19.                 A = pm;
  20.             }
  21.             if (Fpm != 0 && FA * Fpm &#60; 0)
  22.             {
  23.                 B = pm;
  24.             }
  25.             N--;
  26.         } while (N &#62; 0 && Fpm != 0);
  27.         return pm;
  28.     }
  29.     static void Main()
  30.     {
  31.         Console.WriteLine(&#34;Dame A: &#34;);
  32.         double A = double.Parse(Console.ReadLine());
  33.         Console.WriteLine(&#34;Dame B: &#34;);
  34.         double B = double.Parse(Console.ReadLine());
  35.         Console.WriteLine(&#34;Dame N: &#34;);
  36.         int N = int.Parse(Console.ReadLine());
  37.         double resultado = BISECCION(A, B, N);
  38.     }
  39.  
  40. }
  41.  
Eso es por que al declarar la variable FA, le das el valor de F(x), es decir, que haga la funcion F con el parametro x.
Pero en ninguna parte del codigo definiste a 'x', entonces la funcion no puede realizarse con un parametro que no tiene valor. Debes primero definir el valor de x, para poder pasarlo como parametro.

4
C# / Re: Metodos Numericos En C#
« en: Domingo 25 de Mayo de 2008, 19:25 »
Cita de: "dlg89"
hola de nuevo, ya consegui arreglar el problema, ahora me viene otra duda a ver si em ayudais


tengo este codigo, pero dentro del static void Main como hago para invocar el metodo de biseccion???saluddos
Citar
using System;

class metodo
{

    static double F(double x)
    {
        return x * x - 100;
    }
    static double BISECCION(double A, double B, int N)
    {
        double FA = F(x), Fpm, pm;
        do
        {
            pm = (A + B) / 2;
            Fpm = F(pm);
            if (Fpm != 0 && FA * Fpm > 0)
            {
                A = pm;
            }
            if (Fpm != 0 && FA * Fpm < 0)
            {
                B = pm;
            }
            N--;
        } while (N > 0 && Fpm != 0);
        return pm;
    }
    static void Main()
    {
        Console.WriteLine("Dame A: ");
        double A = double.Parse(Console.ReadLine());
        Console.WriteLine("Dame B: ");
        double B = double.Parse(Console.ReadLine());
        Console.WriteLine("Dame N: ");
        int N = int.Parse(Console.ReadLine());
....................................
        }

}
Escribes el nombre del metodo, seguido de los parametros entre parentesis. En este caso, como regresas un valor double, necesitas una variable double en el Main para ahi almacenar el valor que regresa la funcion.
Ej

Código: Text
  1.  
  2.     static void Main()
  3.     {
  4.         Console.WriteLine(&#34;Dame A: &#34;);
  5.         double A = double.Parse(Console.ReadLine());
  6.         Console.WriteLine(&#34;Dame B: &#34;);
  7.         double B = double.Parse(Console.ReadLine());
  8.         Console.WriteLine(&#34;Dame N: &#34;);
  9.         int N = int.Parse(Console.ReadLine());
  10.         double resultado=BISECCION(A,B,N);
  11.  
  12.         }
  13.  
  14.  

Tal vez despues quieras imprimir el resultado en pantalla, solo tendrias q mostrar la variable resultado.
O si haces un metodo (void) que no regresa nada, puedes imprimirlo en el mismo metodo, sin la necesidad de usar otra variable en el main.
 :)

5
C# / Re: Metodos Numericos En C#
« en: Sábado 24 de Mayo de 2008, 17:22 »
Cita de: "dlg89"
Citar
using System;

class trapecios
{
    static double Fx1(double x)
    {
        return Math.Sin(x);
    }
    static double trapecio (double A, double B, int N)
    {
        double Integral = 0;
        double h = (B - A) / N;
        for (double x = A; x < B; x += h)
        {
            double xdch = x + h;
            double Fx = Fx1(x);
            double Fxdch = Fx1(xdch);
            Integral += (Fx + Fxdch) / 2 * h;
        }
        return Integral;
    }

    static void Main()
    {
        double Menor = 0.0, Mayor = Math.PI / 2.0;
        int Intervalos = 1000;
        double Ancho = (Mayor - Menor) / Intervalos;
        double Integral = (Fx1(Menor) + Fx1(Mayor)) / 2.0;
        for (int I = 1; I < Intervalos; I++)
        {
            Integral += Fx1(Menor + I * Ancho);
        }
        Integral *= Ancho;

        Console.WriteLine(Integral);
        Console.ReadLine();
    }
}


hola de nuevo, probando en casa e hecho este progrmama para resolver la funcion seno  de x entre 0 y pi/2, pero tengo una duda y es que con el codigo que os dejo me sale el programa pero si quito lo que pongo en rojo tambien salle, y queria saber porque
Nunca invocas la funcion trapecio(la que esta en rojo), por eso no importa si la escribes o no

6
C# / Re: Ordenar Matriz Bidimensional
« en: Sábado 24 de Mayo de 2008, 00:00 »
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace OrderArray
{
    class Program
    {
        static void llenar(int[,] matriz)
        {
            int i, j;
            Random generarNumeros = new Random();
            for(i=0;i<matriz.GetLength(0);i++)
            {
                for (j = 0; j < matriz.GetLength(1); j++)
                {
                    matriz[i, j] = generarNumeros.Next(0,10);
                }
            }
            for (i = 0; i < 3; i++)
            {
                for (j = 0; j < 3; j++)
                {
                    Console.Write(matriz[i, j]+" ");
                }
                Console.WriteLine();
            }
        }

        static void ordenar(int[,] matriz)
        {
            int i, j, k, l, temp;
            for (k = 1; k <= 3; k++)
            {
                for (l = 0; l < 3; l++)
                    for (i = 0; i < 3; i++)
                        for (j = 0; j < 2; j++)
                            if (matriz[i,j] > matriz[i,j + 1])
                            {
                                temp = matriz[i,j];
                                matriz[i,j] = matriz[i,j + 1];
                                matriz[i,j + 1] = temp;
                            }
            }
            Console.WriteLine("\n\nMatriz Ordenada");
            for (i = 0; i < 3; i++)
            {
                for (j = 0; j < 3; j++)
                {
                    Console.Write(matriz[i, j]+" ");
                }
                Console.WriteLine();
            }
        }

        static void Main(string[] args)
        {
            int[,] matriz = new int[3, 3];
            llenar(matriz);
            ordenar(matriz);
            Console.ReadLine();
        }
    }
}

7
Novedades en SoloCodigo / Re: Sugerencias Para Mejorar El Sitio
« en: Viernes 9 de Mayo de 2008, 06:37 »
Cita de: "RadicalEd"
Hacer artículos, recomendaciones, boletines semanales con lo mejor del foro, etc.
Eso me parece muy bueno, algo dele stilo del boletin que manda slashdot  :)

8
C# / Re: Imagen Se Muestra Solo La Hacer Clic
« en: Miércoles 30 de Abril de 2008, 05:14 »
Cita de: "knk1"
Mmmmm, acaso no es por que estas poniendo la @ en la cadena, este carácter sirve para tomar tal cual una cadena, es decir, para no tomar los caracteres de escape y para especificar la ruta, estas poniendo \ dos veces seguidas, según yo, la ruta

C:\\Documents and Settings\\Psycho_Bro\\Mis documentos\\Mis imágenes\\1158094969_f.jpg

no existe.......... Tal vez me equivoco, pero cuando yo escribo rutas y utlizo la @ no es necesario poner dos veces el caracter \
Probe esa opcion, resulta lo mismo si pones una o dos diagonales, aparte si no existiera la ruta, tampoco saldria la imagen con el click

9
C# / Re: Imagen Se Muestra Solo La Hacer Clic
« en: Martes 29 de Abril de 2008, 20:53 »
Fijate en la parte en donde estas poniendo el codigo.
Seguramente lo pusiste aqui:
Código: Text
  1.  
  2.         private void pictureBox1_Click(object sender, EventArgs e)
  3.         {
  4.            //código
  5.         }
  6.  
  7.  
donde con el _Click, estas diciendo que efectivamente, al hacer click, esta sea la ruta de la imagen. Debe estar aqui:
Código: Text
  1.  
  2.         private void Form1_Load(object sender, EventArgs e)
  3.         {
  4.             //Tu código
  5.         }
  6.  
  7.  
Obvioamente la parte de Form1 cambia dependiendo del nombre que le pusiste

10
C# / Re: Programa Que Diga Si Un Numero Es Par O Impar
« en: Jueves 24 de Abril de 2008, 06:20 »
private void button1_Click(object sender, EventArgs e)
        {
            if
                (((double.Parse(num.Text)) % 2 == 0))
                MessageBox.Show("Es par");
            else
                MessageBox.Show("Es impar");
        }

 :comp:

Este ejemplo da el resultado en un cuadro, solo es cuestion de cambiarlo por NombreTextBox.Text

Páginas: [1]