Menú

Mostrar Mensajes

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

Mostrar Mensajes Menú

Mensajes - fzp

#191
Cita de: win_7 en 30 Mayo 2021, 13:48 PM
Tanto para movil y para ordenador. Aunque es más molesto para movil.

No se puede quitar; se puede evitar: no haciendo navegación privada. El avisar de las cookies y requerir el consentimiento expreso del usuario es desde hace algunos años obligado por una directiva de la Unión Europea (luego... España). Cuando entras por primera vez a un sitio te pide el consentimiento y si se lo das, la próxima vez que entres ya sabe que se lo has dado y no lo pide más. Pero si usas la navegación privada los datos de historial y cookies se borran al salir del navegador, con lo cual la siguiente vez que entras el sitio web no encuentra las cookies, con lo cual no sabe nada de tu consentimiento y te lo vuelve a pedir. Si no quieres que te pidan el consentimiento cada vez, no navegues privadamente ni borres manualmente las cookies.
#192
Y dejando aparte la complejidad de la lógica interna ¿existen diferencias, ventajas o desventajas, en cuanto al uso de recursos del sistema, entre usar recursividad o no usarla?

Si existen diferencias en:
- tiempo de ejecución, ¿tarda uno más que otro?
- tiempo de compilación
- uso de recursos, por ejemplo memoria, ¿consume más uno que otro?
#193
Las cosas que veo yo.

Hay dos 'return 0' de los cuales el primero creo que no se ejecuta nunca. Está dentro del 'switch' como última operación; pero como todos los 'case' tienen un 'break' siempre se sale afuera del paquete de operaciones 'switch' y nunca pasa por ahí el proceso del programa. Si se quiere que el programa se pare en el 'case 3:' hay que colocar el 'return 0' ahí, dentro del 'case 3:' en lugar del 'break'.

En el 'case 1:' se declara la variable 'resp' y se le asigna un valor de cadena vacía. Después dentro del bucle 'do' no se le asigna ningún nuevo valor (no existe ninguna instrucción 'cin' ni ningún 'resp ='), con lo cual al llegar al final del bucle en 'while' nunca se cumple la condición ya que nunca es resp == 'S' ni tampoco resp == 's'... siempre es resp == cadena vacía; con lo que se sale del bucle y nunca se vuelve al 'do'.

La tercera comparación de los triángulos no es correcta me parece, se ha repetido la compración de los lados 1 y 2 y falta la del lado1 con el lado 3:
"else if (l1!=l2&&l1!=l2&&l2!=l3)"
Pero es que además es innecesaria, un triángulo sólo puede ser equilátero, isósceles o escaleno, por lo que si no es de ninguna de las dos primeras clases por fuerza es de la tercera y ya no hace falta el 'if'. Simplemente 'else' ------> es escaleno.

No se han respetado las buenas normas de escritura de código C/C++: sangrado de líneas, alineación de llaves {, } de forma que se visualice bien la estructura del programa sin tener que buscar qué parte se corresponde con qué otra parte,...

Es norma del foro poner las secuencias de código entre etiquetas, para ello tienes entre las opciones para el texto del mensaje el pequeño menú desplegable 'Código GeSHi'. Al exponer tu código en un mensaje selecciónalo, despliega el menú y dále una opción de lenguaje, igual que harías si quisieses poner negrita, color de letra, tamaño, etc.

#194
@crazykenny : ¿usas algún bloqueador de anuncios? A veces en algunas páginas al usar bloqueadores de publicidad dejan de funcionar algunas opciones de la página: vídeos, encuestas, votaciones y otras opciones que requieren usar botones o clicks; supongo que porque usan la misma técnica que se usa para embeber la publicidad y al bloquear una cosa también se bloquea la otra.
#195
¿Has mirado si concuerda la versión que intentas instalar de W7 -32o 64 bits- con tu sistema?

También puedes buscar una MV ya pre-construida para VBox; archivos .ova ; no necesitas instalarla desde el principio, es ya una MV creada. Se importa con la opción 'importar servicio virtualizado'. También si conoces a alguien que ya tenga una instalada le puedes pedir que te haga una copia exportándola desde VBox.
#196
Programación C/C++ / Re: Ayuda con c++
28 Mayo 2021, 19:53 PM
Eso más que calcular Pi es pedirle a la función de biblioteca que lo calcule ella y te diga cuanto vale. ¿Tú que entiendes que quiere decir la parte del enunciado que indica que se calcule con un error determinado que vendrá dado por la diferencia?
an - an-1

Yo entiendo que se pide calcular mediante un proceso de cálculo iterativo de aproximación numérica, de forma que la diferencia entre los diferentes términos de la sucesión -el error- vaya siendo menor, hasta que se alcance un determinado valor del mismo; momento en que se considerará suficientemente bueno el valor calculado de Pi.

Y para eso supongo que os habrán indicado cuál es el método a emplear, o bien os habrán explicado en la materia correspondiente varios métodos para que elijáis alguno a discreción o, al menos, os habrán dicho dónde encontrar por internet métodos  explicados de calcular Pi; como el de Arquímedes, etc. Este último consiste basicamente en aproximar la longitud de la circunferencia por el perímetro de polígonos regulares de un número de lados creciente; aproximando Pi entonces por el cociente perímetro / diámetro. El 'diámetro' sería la distancia entre vértices opuestos, claro. Conforme se consideran polígonos de mayor número de lados el perímetro se aproxima más a la longitud de la circunferencia, y por tanto el cociente se aproxima más a Pi.

Parece que en realidad Arquímedes utilizó polígonos, comenzando por un hexágono regular y, sucesivamente, de 12, 24, 48... etc, lados. Y calculando polígonos inscritos y circunscritos, acotando por arriba y por abajo el valor de Pi. Supongo que porque el problema del algoritmo reside en calcular la longitud del lado del polígono para poder calcular el perímetro. Sabiendo que el lado del hexágono regular es igual al radio de la circunferencia circunscrita, cosa que se sabe por geometría, se puede ir calculando por Pitágoras los lados de los polígonos de -cada vez- número de lados doble que el anterior.

Hoy día se puede hacer directamente con polígonos de cualquier número de lados, ya que la longitud del lado se obtiene fácil por trigonometría.
#197
Aparte de que funcione o no hay cosas que están mal ahí. ¿Por qué para el dato k en un primer momento lo limitas a unos valores pero luego le quitas la limitación y dejas que se pueda entrar un nº cualquiera?

En una condición if indicas que debe estar entre  0 y 15, en cuyo caso no se hace nada, pero si no se cumple en el else subsuguiente lo vuelves a introducir como dato sin ninguna limitación, con lo cual podría introducirse se un nº que no esté en el rango 0 - 15. Además no sé si corresponde al mismo dato o deben de ser dos datos distintos, ya que para la primera vez que introduces k el mensaje es "cuántos términos", pero en el else se pregunta "cual es el valor de k?". En todo caso el nº introducido si es el caso del else te machacará el primer nº introducido.

Lo mismo ocurre con la introducción de x. Primero se pretende que esté limitado al rango -2 - 2, pero si no se cumple se deja que se vuelva a meter un valor cualquiera, que podría estar fuera de ese rango. ¿Por qué?

Tampoco entiendo por qué incluyes la biblioteca conio. No he mirado más del comportamiento del programa.
#198
Haz un arreglo de cadenas (array de strings), cada cadena una palabra, y después de sacar un número aleatorio, en lugar de imprimir el nº, imprime la cadena que corresponde ese número.
#199
Cita de: Mudereded401 en 11 Mayo 2021, 23:16 PM
Hola! Hace nada estaba tratando de resolver un triángulo...

¿Se admite solución mediante cálculo numérico? ¿O tiene que ser una solución analítica? Teóricamente se puede plantear un sistema de ecuaciones, el problema es que no es un sistema lineal, sino ecuaciones en senos y cosenos, y creo que no tendría una solución analítica.

Basándose en que la suma de los ángulos de un triángulo es 180 y por tanto la suma de los ángulos desconocidos tiene quer 55,5; en que la altura dibujada es por una parte igual a
8,3 / seno(ángulo izquierdo)
y por otra igual a
5,4 / seno(ángulo derecho)
los lados desconocidos respectivamente iguales a
8,3 * cos(ángulo izquierdo) - 5,4 * cos(ángulo derecho)

No sé si es un problema puramente matemático y es obligada una resolución analítica o es de informática y se trata de hacer un programa para una resolución de cálculo numérico. Si es lo segundo creo que no sería muy complicado de programar con un bucle de aproximaciones sucesivas hasta que el error fuese inferior a un valor elegido.

No me he entretenido en programarlo pero con una hoja de cálculo se puede hacer en un ratito. Si tomamos como aproximación suficientemente buena para las longitudes un decimal, ya que los datos están expresado con un decimal, una solución buena es:
ángulo izquierdo: 21,395º
ángulo derecho: 34,105º
altura: 3,0278
longitud de la base: 12,2; (7,7 + 4,5) - a izda. y dcha. de la altura respectivamente

Según esta aproximación los lados datos serían:
8,299991985 ~ 8,3
5,399927283 ~ 5,4
Y el error en la altura es de: -3,78494E-5

Se podría afinar hasta el error que se quisiera y como digo no lo veo muy complicado de programar.
EDITO:
Pues sí que tiene solución analítica y es bastante fácil y rápida. Cuando dejas de hacer problemas como rutina pierdes la práctica. Pero revisándolo me he dado cuenta. Basta poner el triángulo con el vértice superior en el centro de un sistema de ejes coordenados y hacer coincidir un lado, por ejemplo el de 8,3 y aplicar geometría analítica elemental: ecuaciones de la circunferencia y la recta y distancia entre dos puntos del plano. Por si todavía interesa a alguien es ésto:
#200
Cita de: el-brujo en 12 Mayo 2021, 12:17 PM
Medidas prevención para evitar que un ransomware secuestre tu empresa
...
4-  Copias de seguridad
...

Que bien le habría venido al SEPE esa recomendación.
Recomendación complementaria a esa: y disponer de DVD, USB o algún sistema externo de inicio, restauración y/o reparación del S.O. Parece tonto pero hay mucha gente que no lo tiene y luego se tira de los pelos no ya por un ataque de ransonware sino por problemas corrientes.