• Viernes 8 de Noviembre de 2024, 16: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 - maucapu15

Páginas: [1]
1
Java / "color" en java
« en: Sábado 8 de Mayo de 2010, 23:02 »
ayudenme con esto!!!!En equipos electrónicos es habitual representar el color por medio de 3 componentes: rojo (R), verde (G) y azul (B). Así un color queda definido por medio de tres valores, RGB. En este ejercicio a cada componente le asignaremos un valor real entre 0.0 y 1.0, de forma que algunos colores típicos quedan definidos como en la tabla de la derecha.
me piden programar una clase “Color” que tenga:
1. tres atributos privados para los componentes R, G y B
2. un constructor al que se le pasan los valores de los tres componentes:
· si algún valor fuera negativo, se deja en 0.0
· si algún valor es mayor que 1, se deja en 1.0

2
Java / numero vampi en java
« en: Sábado 8 de Mayo de 2010, 22:31 »
hacer un  algoritmo para encontrar los número vampiros   :huh: comprendidos en el intervalo [a, b] ingresado por el usuario, un numero vampiro es todo número natural para el cual exista una factorización formada por lo dígitos del propio número. Por ejemplo, el número 126 es un número vampiro ya que lo podemos factorizar así: 126=21*6.
como paso esto a java? :oops:
#include <stdio.h>

long num1, num2;

int es_vampiro(long);
int verifica_digitos(long,long,char*);

void main()
{
long numero;

printf("Dame el número -> ");
scanf("%ld", &numero);

if(es_vampiro(numero))
printf("El número %ld es vampiro de los progenitores %ld y %ld!n", numero, num1, num2);
else
printf("El número %ld NO es vampiro!n", numero);
}

int es_vampiro(long num)
{
char numero[100];
long c, d, potencia = 1, ini = 1;
int len;

sprintf(numero, "%ld", num);
len = strlen(numero);

/* Si no tiene longitud par ya no es vampiro */
if(len%2 != 0)
return 0;

for(c = 0; c < len/2; c++)
potencia *= 10;

potencia--;

for(c = 1; c < len/2; c++)
ini *= 10;

/* Buscamos los progenitores del numero */
for(c = ini; c <= potencia; c++)
for(d = ini; d <= potencia; d++)
if(c*d == num && verifica_digitos(c, d, numero))
return 1;

return 0;
}

int verifica_digitos(long n1, long n2, char *res)
{
int digitos_nums[10] = {0}, digitos_res[10] = {0}, c = 0;
char temp[100];

sprintf(temp, "%ld%ld", n1, n2);

while(res[c])
{
/* Vemos cuantas veces se repiten los digitos */
digitos_res[atoi(res[c])]++;
digitos_nums[atoi(temp[c])]++;
c++;
}

/* Si no son los mismos digitos, no es vampiro */
for(c = 0; c < 10; c++)
if(digitos_res[c] != digitos_nums[c])
return 0;

num1 = n1;
num2 = n2;

return 1;
}

Páginas: [1]