• Jueves 28 de Marzo de 2024, 15:49

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 - sanlegas2000

Páginas: [1]
1
Java / angulos, funciones trigonometricas en java
« en: Lunes 30 de Abril de 2012, 02:44 »
Bueno el caso es que no se por que no me imprime bien determinadas funciones de algunos angulos. por ejemplo
sen 90 es 1 y cos de 90 es 0 pero en java el coseno me lo imprime asi 6.123233995736766E-17
a que se debe?
aqui el codigo
Código: Java(TM) 2 Platform Standard Edition 5.0
  1. public static void main(String[] a)
  2.     {
  3.          double angulo = 90.0 * 2.0 * Math.PI/360.0;
  4.  
  5.         System.out.println("coseno "+Math.cos(angulo));
  6.         System.out.println("seno "+Math.sin(angulo));
  7.         System.out.println("\n");
  8.         angulo = 0.0 * 2.0 * Math.PI/360.0;
  9.           System.out.println("coseno "+Math.cos(angulo));
  10.         System.out.println("seno "+Math.sin(angulo));
  11.         System.out.println("\n");
  12.         angulo = 180 * 2.0 * Math.PI/360.0;
  13.           System.out.println("coseno "+Math.cos(angulo));
  14.         System.out.println("seno "+Math.sin(angulo));
  15.  
  16.      }
  17.  

2
Papelera / reloj componente, grafico, javabeans
« en: Miércoles 25 de Abril de 2012, 23:20 »
Bueno amigos el caso es que me dejaro hacer un reloj, para ser honesto el codigo me lo pasaron, la cuestion es que tengo que hacer un componente con el, pasarlo a javabeans, ya trate de hacerlo por mi cuenta y no he avanzado mucho no se si me puedan ayudar ustedes Gracias
Código: Java(TM) 2 Platform Standard Edition 5.0
  1. import java.util.*;
  2. import java.awt.*;
  3. import java.awt.event.*;
  4. import javax.swing.*;
  5. public class Reloj1 extends JFrame{
  6.        
  7.         private Point puntoCentro;
  8.         private JFrame ventana;
  9.         private JButton boton;
  10.         private Container contenido;
  11.         private Graphics objeto;
  12.         private boolean ban;
  13. public Reloj1(int x,int y,int a,int b)
  14.     {
  15.         contenido=getContentPane();
  16.         contenido.setBackground(Color.white);
  17.         setSize(a-90,b-35);
  18.         setLocation(x,y);
  19.         setVisible(true);
  20.        
  21.         PuntoCentro(new Point(x,y));
  22.        
  23.         contenido.setLayout(null);
  24.         objeto=contenido.getGraphics();
  25.         ban=true;
  26.         setDefaultCloseOperation(EXIT_ON_CLOSE);
  27.         while(ban==true)
  28.         {
  29.          try{
  30.                   Thread.sleep(1000);
  31.                   traza();
  32.               manecillas();
  33.                 }catch(Exception e){};
  34.         }
  35.        
  36.        
  37.        
  38.     }
  39.    
  40.    
  41.     public void PuntoCentro(Point punto)
  42.     {
  43.         puntoCentro=punto;
  44.     }
  45.    
  46.     public void traza()
  47.     {  
  48.         objeto.setColor(Color.WHITE);
  49.         objeto.fillRect(puntoCentro.x-100,puntoCentro.y-100,200,200);
  50.         objeto.setColor(Color.RED);
  51.         objeto.fillOval(puntoCentro.x-2,puntoCentro.y-2,5,5);
  52.         objeto.setColor(Color.BLUE);
  53.         int hora;
  54.         Calendar calendario = new GregorianCalendar();
  55.         hora =calendario.get(Calendar.HOUR_OF_DAY);
  56.         for(int i=0;i<12;i++)
  57.         {
  58.             double ang=(AnguloHora(i,60));
  59.             int x2=(int)(90*(Math.cos(ang)));
  60.             int y2=(int)(90*(Math.sin(ang)));
  61.             objeto.drawString(""+(i+1),((puntoCentro.x)+(x2))-2,((puntoCentro.y)-(y2))+5);
  62.         }
  63.     }
  64.    
  65.     public void manecillas()
  66.     {
  67.         int hora,minutos,segundos;
  68.         Calendar calendario = new GregorianCalendar();
  69.         hora =calendario.get(Calendar.HOUR_OF_DAY);
  70.         minutos=calendario.get(Calendar.MINUTE);
  71.         segundos=calendario.get(Calendar.SECOND);
  72.         double an=(AnguloMin(minutos));
  73.         double ang=(AnguloHora(hora,minutos));
  74.         int x2=(int)(90*(Math.cos(an)));
  75.         int y2=(int)(90*(Math.sin(an)));
  76.         objeto.setColor(Color.RED);
  77.        
  78.         objeto.fillOval(((puntoCentro.x)+(x2))-2,((puntoCentro.y)-(y2))-2,5,5);
  79.         objeto.drawLine(puntoCentro.x,puntoCentro.y,(puntoCentro.x)+(x2),(puntoCentro.y)-(y2));
  80.        
  81.        
  82.         an=(AnguloMin(segundos));
  83.         x2=(int)(90*(Math.cos(an)));
  84.         y2=(int)(90*(Math.sin(an)));
  85.         objeto.fillOval(((puntoCentro.x)+(x2))-2,((puntoCentro.y)-(y2))-2,5,5);
  86.         objeto.drawLine(puntoCentro.x,puntoCentro.y,(puntoCentro.x)+(x2),(puntoCentro.y)-(y2));
  87.        
  88.         x2=(int)(60*(Math.cos(ang)));
  89.         y2=(int)(60*(Math.sin(ang)));
  90.         objeto.fillOval(((puntoCentro.x)+(x2))-2,((puntoCentro.y)-(y2))-2,5,5);
  91.         objeto.drawLine(puntoCentro.x,puntoCentro.y,(puntoCentro.x)+(x2),(puntoCentro.y)-(y2));
  92.        
  93.         String h="",m="",s="";
  94.         if(hora<10)
  95.         {
  96.                 h="0";
  97.         }
  98.         if(minutos<10)
  99.         {
  100.                 m="0";
  101.         }
  102.         if(segundos<10)
  103.         {
  104.                 s="0";
  105.         }
  106.         objeto.setColor(Color.WHITE);
  107.         objeto.fillRect(puntoCentro.x-20,(puntoCentro.y)+(puntoCentro.y),80,30);
  108.         objeto.setColor(Color.BLUE);
  109.         objeto.drawString(h+hora+":"+m+minutos+":"+s+segundos,puntoCentro.x-20,(puntoCentro.y)+(puntoCentro.y)+20);
  110.     }
  111.    
  112.     public double AnguloMin(int min)
  113.     {
  114.         double minuto;
  115.         minuto=((90-(min*6.0))*(Math.PI/180));
  116.         return minuto;
  117.     }
  118.    
  119.     public double AnguloHora(int hor,int min)
  120.     {
  121.         double hora;
  122.         hora=(((90-(hor+(min/60.0))*30.0))*((Math.PI)/180));
  123.         return hora;
  124.     }
  125.    
  126.    
  127.     public static void main(String[] args)
  128.     {
  129.         Reloj1 reloj= new Reloj1(100,100,300,300);
  130.         reloj.setVisible(true);
  131.     }
  132.    
  133. }
  134.  

3
C/C++ / Re:Un problemita con un programa
« en: Domingo 9 de Octubre de 2011, 07:59 »
Bueno primero no veo la necesidad de usar un arreglo de char y por eso mejor usar solo un char, y pues se te ciclaba por que no habia un caso para la F, ya lo puse espero que te sirva.
Código: C
  1. #include <stdio.h>
  2.  
  3. void suma();
  4. void resta();
  5. void ayuda();
  6.  
  7. int main()
  8. {
  9.         char a;
  10.         //printf("\nSelecciona A para ayuda: ");
  11.         //scanf("%c",&a);
  12.        
  13.        
  14.         while(a != 'F')
  15.         {
  16.                 printf("\nSelecciona A para ayuda: ");
  17.                 scanf("%c",&a);
  18.                 if (a == 'F')
  19.                 {
  20.                         printf("Fin del programa: \n");
  21.                         return 0;
  22.                 }
  23.                 if (a == 'S')
  24.                         suma();
  25.                 else if
  26.                         (a == 'R')
  27.                         resta();
  28.                 else if
  29.                         (a == 'A')
  30.                         ayuda();
  31.                 else
  32.                         printf("Error, ingrese nuevamente codigo: ");
  33.         scanf("%c",&a);
  34.         }
  35.        
  36. }
  37. void suma()
  38. {
  39.         float sum, num1, num2;
  40.        
  41.         printf("\n\nIngrese los dos valores: ");
  42.         scanf("%f",&num1);
  43.         printf("\nIngrese segundo valor");
  44.         scanf("%f",&num2);
  45.        
  46.         sum=num1+num2;
  47.        
  48.         printf("\nLa suma de ambos valores es: %f", sum);
  49. }
  50.  
  51. void resta()
  52. {
  53.         float res, num1, num2;
  54.        
  55.         printf("\n\nIngrese los dos valores: ");
  56.         scanf("%f",&num1);
  57.         printf("\nIngrese segundo valor");
  58.         scanf("%f",&num2);
  59.        
  60.         res=num1-num2;
  61.        
  62.         printf("\nLa suma de ambos valores es: %f ", res);
  63. }
  64.  
  65. void ayuda()
  66. {
  67.         printf("\nA continuacion se concederan las instrucciones");
  68.         printf("\n\nSi ingresa S, sera la suma de ambos valores");
  69.         printf("\nSi ingresa R sera la diferencia de ambos valores");
  70.         printf("\nSi desea finalizar programa ingrese F");
  71. }
  72.  

4
Java / Re: recursividad con cadenas
« en: Miércoles 21 de Septiembre de 2011, 08:00 »
gracias por la repuesta saludos

5
Java / recursividad con cadenas
« en: Lunes 19 de Septiembre de 2011, 07:32 »
Bueno amigos el caso es que me dejaron hacer un programa que calcule la longitud de una cadena en forma recursiva, el codigo ya lo tengo, al momento de compilar no me marca error pero al ejecutar si, me pueden ayudar?
Código: Java(TM) 2 Platform Standard Edition 5.0
  1. public class prubea
  2. {
  3.  
  4.        
  5.         public int longi(String cad,int pos)
  6.         {
  7.                 //int ad=cad.length();
  8.                 if (cad.charAt(pos)!='\0')
  9.                 {
  10.                         return longi(cad, pos+1);
  11.                 }
  12.                 else
  13.                         return pos;
  14.         }
  15.    public static void main( String args[] )
  16.    {
  17.      
  18.  
  19.       String s = new String( "hello" );
  20.            prubea obj=new prubea();
  21.  
  22.           System.out.println(""+obj.longi(s,0));
  23.            //obj.longi(s,0);
  24.            
  25.  
  26.       System.exit( 0 );
  27.    }
  28.  
  29. }
  30.  

6
Pascal / [Código Fuente] Re:Triángulo de Pascal
« en: Miércoles 10 de Agosto de 2011, 05:24 »
se ve interesante depues publicare mi version

7
C/C++ / Re: funcion de taylor
« en: Jueves 7 de Julio de 2011, 04:40 »
gracias amigo por tomarte la molestia en responder, gracias por la aclaracion B)

8
C/C++ / funcion de taylor
« en: Domingo 19 de Junio de 2011, 16:54 »
Bueno me dejaron hacer la serie de taylor, me base en este libro(les adjuto la imagen)
el caso es que si funciona para ese problema(solo se pasa por unas centesimas) pero cuando pongo otros valores como 90, por ejemplo sen de 90 es uno, me deberia de dar no se un numero cercano a , pero me da 1.4 y tanto , siento que el problema es que me como muchos centecimos o no se donde este si pueden ayudarme gracias.
imageshack.us/photo/my-images/38/taylot.png(aun no cuento con privilegios de subir imagen xD)
Código: C
  1. #include <stdio.h>
  2. #include<string.h>
  3. #include<stdlib.h>
  4. #include <math.h>
  5. #define pi 3.141592654
  6. int factorial(int n)
  7. {
  8.     int i;
  9.     int fac=1;
  10.     for (i=1;i<=n;i++)
  11.     {
  12.         fac=fac*i;
  13.     }
  14.     return  fac;
  15. }
  16. int main()
  17. {
  18.     float x=90,a=45,suma=1;
  19.     float z=(x-a)/180*pi;
  20.     int i;
  21.     int iteraciones=15;
  22.     float e,r,t;
  23.     e=(float)1/90;
  24.     float param=90,resul;
  25.     resul=sin(param*pi/180);
  26.     for (i=1;i<iteraciones;i++)
  27.     {
  28.        
  29.     if(i%4==1 || i%4==2)
  30.        
  31.             suma=suma+pow(z,i)/factorial(i);
  32.        
  33.         if(i%4==3|| i%4==0)
  34.            
  35.         suma=suma+(-1)*(pow(z,i)/factorial(i));
  36.        
  37.         }
  38.         e=sin(a*pi/180);
  39.    
  40.     printf(" %.15fn",suma*e);
  41.  
  42.     return 0;
  43. }
  44.  

9
Java / help, como imprimir usando un metodo
« en: Lunes 28 de Marzo de 2011, 07:19 »
Bueno soy nuevo en java y tambien en el foro
el caso es que no se como imprmiir los datos de una clase usando un metodo
les dejo el codigo para que medigan donde esta el error
gracias
public class manzana
{
// Declaracion de atributos
public int idManzana;
public String color;
public double precio;
// Declaracion del metodo constructor
//public inicializar() MARCA ERROR
public manzana()
{
// instruciones propias del constructor
idManzana=0;
color="ninguno";
precio=0.0f;
}
// Declaracion del metodo set para el atributo idmanz
public void setIdmanzana(int man)
{
idManzana=man;
}
// Declaracion del metodo set para el atributo color
public void setColor(String col)
{
color=col;
}
// Declaracion del metodo set para el atributo precio
public void setPrecio(double pre)
{
precio=pre;
}
// Declaracion el metodo get para el atriuto idmanzana
public int getIdmanzana()
{
return idManzana;
}
// Declaracion el metodo get para el atriuto color
public String getColor()
{
return color;
}
public double getprecio()
{
return precio;
}
public void madurar(int n)
{
if (n==0)
{
setColor("verde");
setPrecio(5);
}
}
//public void imprimir(obj1 uno) mal
//public void imprimir(manzana uno)
public void imprimir()
{
//System.out.println("valor de la variable matricula ="+obj1); imprime la direccion de memoria
System.out.println("valor de la variable matricula ="+obj1.idManzana);
//System.out.println("valor de la variable matricula ="+uno.color);
//System.out.println("valor de la variable matricula ="+uno.precio);
}
public static void main(String[] args)
{
manzana obj1 =new manzana();
//imprimir(obj1); marca error
//obj1.imprimir; mal
//obj1.imprimir(); mal
//imprimir(obj1);
obj1.imprimir();
}
}

10
Retos / Re: Online Judges
« en: Jueves 8 de Abril de 2010, 05:51 »
igual yo en la uni nos ponen problemas de la uva, no seria bueno discutir los problemas que proponen en la uva?

11
C/C++ / Re: Multiplicacion de polinomios???????
« en: Sábado 13 de Febrero de 2010, 18:54 »
asi es tienes  que hacer algo de tu parte, ese programa ya lo tengo pero tu tienes que hacer una parte asi que has un avance y aqui te ayudo

12
C/C++ / como hacer la funcion strtok
« en: Sábado 30 de Enero de 2010, 00:56 »
que tal amigos quisiera que me ayudaran a hacer la funcion strtok ya tengo una parte del codigo pero tiene algunos errores no se si me puedan ayudar.
gracias.

#include<stdio.h>

int strlen(char cad[])
{
    char *ptr=cad;

    while(*ptr)
        ptr++;
    return cad-ptr;
}

char* strtok(char cad[], char sep[])
{

    static char *ptr=cad;
    char *ptr2=sep;
   
   
    while(*ptr2)
    {
        while(*ptr)
        {
            if(*ptr==*ptr2)
            {
                *ptr='';
                return ++ptr;

            }

        ptr++;
        }
    ptr2++;
    }

return NULL;
}

main()
{
    char cad[94]="mejor morir de pie que vivir arrodillado";
    char sep[9]=" ";
    char *ptr[20];
    int i=0;

   
    ptr[0]=strtok(cad,sep);
   

    while(*ptr)
    {
        puts(ptr);
        printf("n");
        ptr=strtok(NULL,sep);    
        ptr[i++];
    }



return 0;    
}
/*me

13
C/C++ / Re: pasar matriz a una funcion (ansi c)
« en: Viernes 1 de Enero de 2010, 01:50 »
gracias tu repuesta es mas elegante que la que me dieron en otro foro.
problema resuelto

14
C/C++ / Re: Convertir cadenas de texto
« en: Miércoles 30 de Diciembre de 2009, 20:37 »
bueno ya lo resolviste seria bueno que pongas la solucion, por miestras dejo la mia. para convertir de minus a mayus ay una funcion, igual de minus a mayus.
ahora como cambiar de mayus a minu.
if(A[f]>=65 && A[f]<=90)// si el caracter es mayuscula
A[f]=A[f]+32;
else
         {
            
            B[f]=A[f]-32;
         }
// si no quieres decir es que minus entonces se le resta

15
C/C++ / pasar matriz a una funcion (ansi c)
« en: Miércoles 30 de Diciembre de 2009, 20:02 »
Que tal  mi duda es como pasar una matriz a una funcion, si puedo pasar vectores pero cuando paso una matriz me marca error les dejo el codigo para que lo chequen.
gracias
# include<stdio.h>
void reflejo( int A[100][100], int filas, int columnas)
{
int f,c;
for (f=0;f<3;f++)
{

for (c=3;c>=0;c--)
{
printf("%d ",A[f][c]);
}printf("n");
}

}

void cabeza( int A[100][100], int filas, int columnas)
{
int f,c;
for (f=filas-1;f>=0;f--)
{
for (c=0;c<columnas;c++)
{
printf("%d ",A[f][c]);
}printf("n");
}
}   



int main (void)
{
int A[3][4]={1,2,3,4,5,6,7,8,9,0,1,2};

int filas=3, columnas=4;
//reflejo(A[][],filas,columnas);
//cabeza(A[][],filas,columnas);

//reflejo(A,filas,columnas);

//reflejo(A[100][100],filas,columnas);
//reflejo(A[3][4],filas,columnas);

//reflejo(A[3],[4],filas,columnas);


return 0;
}

16
C/C++ / Re: Palíndromo
« en: Miércoles 30 de Diciembre de 2009, 19:53 »
este es el codigo para ansi c:
1. no uso la libreria string.h ya que para calcular la longitud lo hago yo mismo.
2. lo hago usando funciones
3. si tienes duda mandame un mensaje

#include<stdio.h>
int palin(char pala[])
{
   int i,j,a;
   for(i=0;pala!='';i++);// te calcula la longitud de la cadena
   a=i-1;
   for (j=0; j<a;j++)
   {
      if(pala[j]!=pala[a])
   printf("no es paln");
      break;
      a--;
   }
      
   if   (pala[j]==pala[a])
      
      
      printf("si es paln");
      
        
   
}
   
   
int main (void)
{
   
   char pala[20];// declaracion de la cadena
   gets(pala);// lees la cadena
   palin(pala);// mandas a la funcion la cadena
      
   return 0;
}

17
C/C++ / Re: piramide de números...
« en: Sábado 28 de Noviembre de 2009, 07:10 »
asi es es el triangulo de pascal aqui les dejo el codigo
#include <stdio.h>



void pas(int);

main()

{

   int n;

   scanf("%d",&n);

   pas(n);

 system("pause");

return 0;

}

void pas(int a)

{

   int t[a][a];

   int r,c;

   for(r=0;r<a;r++)

   {

      for(c=0;c<a;c++)

      {

         if(c==0)

            t[r][c]=1;

         else if((c!=0 || c<=r)&& r!=0)

            t[r][c]=t[r-1][c-1]+t[r-1][c];

         else

            t[r][c]=0;

      }

   }

for(r=0;r<a;r++)

{   for(c=0;c<a;c++)

   {

      if(t[r][c]==0)

         printf(" ");

      else



         printf("%d",t[r][c]);

   }

   printf("n");

}

}

Páginas: [1]