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.


Temas - victorchinea

Páginas: [1]
1
Hola. Mi solución al ejercicio (CU00825B) del tutorial pdf de programación PHP. Me he liado un poco y no sé si está bien planteado como lo hice.

¡¡Un saludo!!

Citar
Crea el código PHP de dos archivos que den respuesta al siguiente planteamiento:

Queremos almacenar en una matriz el número de alumnos con el que cuenta una academia, ordenados en función del nivel y del idioma que se estudia. Tendremos 3 niveles: Nivel básico, medio y de perfeccionamiento, que se corresponden con las filas de la matriz, y 4 idiomas (Inglés, Francés, Alemán y Ruso), que se corresponden con las columnas de la matriz. Se pide realizar la declaración de la matriz y asignarle los valores indicados en la siguiente imagen cumpliendo con:

a) Con una sintaxis ejemplo de uso de arrays asociativos donde el primer índice del array (niveles) es un número y el segundo un texto indicativo del idioma. Se debe mostrar por pantalla los alumnos que existen en cada nivel e idioma. Ejemplo: numeroAlumnos[0]['frances'] representará el número de alumnos que existen en el nivel básico, idioma francés.

b) Con una sintaxis ejemplo de uso de arrays asociativos donde tanto el primer índice del array (niveles) como el segundo (idiomas) sea un texto indicativo. Se debe mostrar por pantalla los alumnos que existen en cada nivel e idioma. Ejemplo: numeroAlumnos['basico']['frances'] representará el número de alumnos que existen en el nivel básico, idioma francés.

Código: [Seleccionar]
<?php

$idioma 
= array ('Inglés''Francés''Alemán''Ruso');
$nivel = array ('básico''medio''perfeccionamiento');

echo 
'<h2>a)';
$numeroAlumnos= array(
  array(
'Inglés'=> 1,'Francés' => 14,'Alemán' => 8,'Ruso' => 3),
  array(
'Inglés'=> 6,'Francés' => 19,'Alemán' => 7,'Ruso' => 2),
  array(
'Inglés'=> 3,'Francés' => 13,'Alemán' => 4,'Ruso' => 1)
);

for (
$niv=0$niv<$niv++) {
  echo 
'<h3>Nivel: '.$nivel[$niv].'</h3>';
    for (
$idi=0$idi<4$idi++) {
      if (
$numeroAlumnos[$niv][$idioma[$idi]]==1) {
        
$num_alum 'alumno';
      }else {
        
$num_alum 'alumnos';
      }
      echo 
$idioma[$idi].' = '.$numeroAlumnos[$niv][$idioma[$idi]].' '.$num_alum.'&nbsp &nbsp &nbsp';
    }
  echo 
"<hr />";
}

echo 
'<h2>b)';
$numeroAlumnos_b['básico']= array('Inglés'=> 1,'Francés' => 14,'Alemán' => 8,'Ruso' => 3);
$numeroAlumnos_b['medio']= array('Inglés'=> 6,'Francés' => 19,'Alemán' => 7,'Ruso' => 2);
$numeroAlumnos_b['perfeccionamiento'] = array('Inglés'=> 3,'Francés' => 13,'Alemán' => 4,'Ruso' => 1);

for (
$niv=0$niv<$niv++) {
  echo 
'<h3>Nivel: '.$nivel[$niv].'</h3>';
    for (
$idi=0$idi<4$idi++) {
      if (
$numeroAlumnos_b[$nivel[$niv]][$idioma[$idi]]==1) {
        
$num_alum 'alumno';
      }else {
        
$num_alum 'alumnos';
      }
      echo 
$idioma[$idi].' = '.$numeroAlumnos_b[$nivel[$niv]][$idioma[$idi]].' '.$num_alum.'&nbsp &nbsp &nbsp';
    }
  echo 
"<hr />";
}

?>

2
Solución propuesta para el ejercicio CU01135E del tutorial pdf de programación web con ejercicios resueltos.

Citar
1) Genera un script que pida cinco números al usuario usando un bucle for normal (usa prompt para pedir los datos y conviértelos a valor numérico posteriormente). Almacena los números introducidos por el usuario en un array. A continuación usando un for in que recorra el array, muestra un mensaje informando del resultado de multiplicar cada uno de los números por 3. Ejemplo:

Se pedirán al usuario cinco números, supongamos que introduce 1, 3, 9, 10 y 7

A continuación se mostrará el mensaje:

Multiplicamos por 3 los números introducidos: 1*3 = 3, 3*3 = 9, 9*3 = 27, 10*3 = 30 y 7*3 =21.
Código: [Seleccionar]
<!DOCTYPE html>
<html lang="es" dir="ltr">
  <head>
    <meta charset="utf-8">
    <title>JavaScript - Recorrer array con for in CU01135E</title>
    <script type="text/javascript">
      function multiplicar() {
        var numero = [];
        var msg = 'Multiplicamos por 3 los números introducidos: ';
        alert ('Introduzca 5 números');
        for (var i = 0; i < 5; i++) {
          numero[i] = prompt ('Elija número ' + (i+1) + ':');}
        for (i in numero) {
          msg = msg + numero[i] + 'X3 = ' + (numero[i]*3) + ', ';}
          alert (msg);
      }
    </script>
  </head>
  <body>
    <h2 onclick="multiplicar()">Presionar aquí para ejecutar el Script</h2>
  </body>
</html>

Gracias, un saludo.

3
Hola. Adjunto ejercicio JavaScript CU01134E del tutorial básico de desarrollo web para ver si está correcto, o ver formas mejor de hacerlo ya que no lo veo por el foro.

Citar
1) Modifica el código del ejemplo de la calculadora JavaScript para que además de tener dos botones que permitan marcar números y operadores con distintos colores tenga:

a) Un botón que permita marcar la tecla C con color rojo fuerte y símbolo C en blanco.

b) Un botón que permita marcar la tecla con el punto con color violeta fuerte y símbolo . en blanco.

c) Un botón que permita marcar la pantalla visor de la calculadora en azul oscuro.

d) Un botón que permita limpiar todo lo que se haya marcado y volver a la situación original (es decir, que la calculadora se vea tal y como se veía inicialmente).

Código: [Seleccionar]
<!DOCTYPE html>
<html><head><title>JavaScript - querySelectorAll y QuerySelector CU01134E</title><meta charset="utf-8">
<style type="text/css">
body {font-family: sans-serif; text-align:center;}
#calculadora {    font: bold 14px Arial,sans-serif; background-color: #9DD2EA;
border-radius: 3px; height: auto; margin: 0 auto;  padding: 20px 20px 9px; width: 295px;
}
.parteSuperior .pantalla {
background-color: rgba(0, 0, 0, 0.2); border-radius: 3px; color: #FFFFFF; float: right; font-size: 17px;
height: 40px; letter-spacing: 1px; line-height: 40px; padding: 0 10px; text-align: right; width: 180px;
}
.teclas, .parteSuperior {overflow: hidden; }
.teclas span, .parteSuperior span.limpiar {     background-color: #FFFFFF; border-radius: 3px; color: #888888;
 cursor: pointer; float: left; height: 36px; line-height: 36px; margin: 0 7px 11px 0;
 text-align: center; transition: all 0.4s ease 0s; width: 66px;
}
.parteSuperior span.limpiar { background-color:#FF7C87;}
.teclas span.operador { background-color: #FFDAB9; margin-right: 0; }
.teclas span.igual { background-color: #F1FF92; color: #888E5F;}
.parteSuperior span.limpiar, { background-color: #FF9FA8; color: #FFFFFF; }
.teclas span:hover, .teclas span.igual:hover, .parteSuperior span.limpiar:hover { background-color: #9C89F6;
color: #FFFFFF; }
#contenedor {width:285px;margin: 40px auto; overflow:hidden;}
#marcaNumeros, #marcaOperadores, #marcarTeclaC, #marcarDecimal, #marcarVisor, #limpiarMarcar {padding:15px; width: 90px; display: inline-block;
margin: 10px; cursor: pointer; color: white; border-radius: 40px; background: rgb(202, 60, 60);}
#marcaNumeros:hover, #marcaOperadores:hover, #marcarTeclaC:hover, #marcarDecimal:hover, #marcarVisor:hover, #limpiarMarcar:hover {background: rgb(66, 184, 221);}
</style>
<script type="text/javascript">
function marcarOperadores(parametro) {
  var listaNodosOperadores = document.querySelectorAll("#calculadora .teclas span.operador");
  var nodoIgual = document.querySelector (".igual");
  if (parametro == 'marcar') {
    for (var i=0; i<listaNodosOperadores.length; i++) {
      listaNodosOperadores[i].style.backgroundColor = "yellow";
      listaNodosOperadores[i].style.color = "black";
      listaNodosOperadores[i].style.border = "solid 1px";}
    nodoIgual.style.backgroundColor = "yellow";
    nodoIgual.style.color = "black";
    nodoIgual.style.border = "solid 1px";}
  else {
    for (var i=0; i<listaNodosOperadores.length; i++) {
      listaNodosOperadores[i].style.backgroundColor = "#FFDAB9";
      listaNodosOperadores[i].style.color = "#888888";
      listaNodosOperadores[i].style.border = "none";}
    nodoIgual.style.backgroundColor = "#F1FF92";
    nodoIgual.style.color = "#888888";
    nodoIgual.style.border = "none";}
}
function marcarNumeros(parametro) {
var listaNodosNumeros = document.querySelectorAll("#calculadora .teclas span.numero");
       for (var i=0; i<listaNodosNumeros.length; i++) {
                if (parametro == 'marcar') {
                  listaNodosNumeros[i].style.backgroundColor = "black";
                  listaNodosNumeros[i].style.color = "white";
                  listaNodosNumeros[i].style.border = "solid 1px";}
                else {
                  listaNodosNumeros[i].style.backgroundColor = "white";
                  listaNodosNumeros[i].style.color = "#888888";
                  listaNodosNumeros[i].style.border = "none";}
                }
}
function marcarTeclaC(parametro) {
  var listaNodoTeclaC = document.querySelector(".limpiar");
  if (parametro == 'marcar') {
    listaNodoTeclaC.style.backgroundColor = "red";
    listaNodoTeclaC.style.color = "white";}
  else {
    listaNodoTeclaC.style.backgroundColor = "#FF7C87";
    listaNodoTeclaC.style.color = "#888888";}
}
function marcarDecimal(parametro) {
  var listaNodoDecimal = document.querySelector(".punto");
  if (parametro == 'marcar') {
    listaNodoDecimal.style.backgroundColor = "#9400D3";
    listaNodoDecimal.style.color = "white";}
  else {
    listaNodoDecimal.style.backgroundColor = "white";
    listaNodoDecimal.style.color = "#888888";}
}
function marcarVisor(parametro) {
  var listaNodoVisor = document.querySelector(".pantalla");
  if (parametro == 'marcar') {
    listaNodoVisor.style.backgroundColor = "#00008B";}
  else {
    listaNodoVisor.style.backgroundColor = "rgba(0, 0, 0, 0.2)";}
}

</script>
</head>
<body>
<div id="cabecera">
<h2>Cursos aprenderaprogramar.com</h2>
<h3>Ejemplo calculadora JavaScript</h3>
</div>
<!-- Calculadora -->
<div id="calculadora">
                <!-- pantalla y tecla limpiar -->
                <div class="parteSuperior">
                               <span class="limpiar" onclick="pulsada('C')">C</span>
                               <div class="pantalla"> </div> <!--Ojo tenemos un espacio para que exista nodeValue-->
                </div>
                <div class="teclas">
                               <!-- operadores y otras teclas -->
                               <span class = "numero" onclick="pulsada('7')">7</span>
                               <span class = "numero" onclick="pulsada('8')">8</span>
                               <span class = "numero" onclick="pulsada('9')">9</span>
                               <span class="operador" onclick="pulsada('+')">+</span>
                               <span class = "numero" onclick="pulsada('4')">4</span>
                               <span class = "numero" onclick="pulsada('5')">5</span>
                               <span class = "numero" onclick="pulsada('6')">6</span>
                               <span class="operador" onclick="pulsada('-')">-</span>
                               <span class = "numero" onclick="pulsada('1')">1</span>
                               <span class = "numero" onclick="pulsada('2')">2</span>
                               <span class = "numero" onclick="pulsada('3')">3</span>
                               <span class="operador" onclick="pulsada('/')">÷</span>
                               <span class = "numero" onclick="pulsada('0')">0</span>
                               <span class ="punto" onclick="pulsada('.')">.</span>
                               <span class="igual" onclick="pulsada('=')">=</span>
                               <span class="operador" onclick="pulsada('*')">x</span>
                </div>
</div>
<div id="contenedor">
<div id ="marcaNumeros" onclick="marcarNumeros('marcar')"> Marcar números </div>
<div id="marcaOperadores" onclick="marcarOperadores('marcar')" >Marcar operadores</div>
<div id="marcarTeclaC" onclick="marcarTeclaC('marcar')">Marcar tecla C</div>
<div id="marcarDecimal" onclick="marcarDecimal('marcar')">Marcar decimal</div>
<div id="marcarVisor" onclick="marcarVisor('marcar')">Marcar Visor</div>
<div id="limpiarMarcar" onclick="marcarTeclaC();marcarNumeros();marcarOperadores();marcarDecimal();marcarVisor();">Limpiar Marcar</div>
</div>
</body>
</html>

Gracias, un saludo.

4
Hola. Dejo mi solución propuesta para el ejercicio CU001133E del tutorial de desarrollo web con JavaScript de aprenderaprogramar.

Me ha costado bastante entender la función "eval". Pero espero no tenerla que utilizar mucho con eso de que es un "evil"...

Adjunto los ejercicios del tema:
Citar
1) Modifica el código del ejemplo de la calculadora javascript para que en lugar del condicional switch uses el condicional if (con if else ó if else if cuando sea necesario).
Código: [Seleccionar]
<!DOCTYPE html>
<html><head><title>Ejemplo aprenderaprogramar.com</title><meta charset="utf-8">
<style type="text/css">
body {font-family: sans-serif; text-align:center;}
#calculadora { font: bold 14px Arial,sans-serif; background-color: #9DD2EA;  border-radius: 3px; height: auto; margin: 0 auto;
    padding: 20px 20px 9px; width: 285px;}
.parteSuperior .pantalla { background-color: rgba(0, 0, 0, 0.2); border-radius: 3px; color: #FFFFFF; float: right; font-size: 17px; height: 40px; letter-spacing: 1px; line-height: 40px; padding: 0 10px; text-align: right; width: 180px;}
.teclas, .parteSuperior {overflow: hidden; }
.teclas span, .parteSuperior span.limpiar {     background-color: #FFFFFF; border-radius: 3px; color: #888888; cursor: pointer;
    float: left; height: 36px; line-height: 36px; margin: 0 7px 11px 0; text-align: center; transition: all 0.4s ease 0s; width: 66px;}
.parteSuperior span.limpiar { background-color:#FF7C87;}
.teclas span.operador { background-color: #FFDAB9; margin-right: 0; }
.teclas span.igual { background-color: #F1FF92; color: #888E5F;}
.parteSuperior span.limpiar, { background-color: #FF9FA8; color: #FFFFFF; }
.teclas span:hover, .teclas span.igual:hover, .parteSuperior span.limpiar:hover {
    background-color: #9C89F6; color: #FFFFFF;
}
</style>
<script type="text/javascript">
function pulsada (tecla) {
  var listaNodosPantalla = document.getElementsByClassName('pantalla');
  var nodoTextoPantalla = listaNodosPantalla[0].firstChild;
  /*switch(tecla) {
    case 'C':
    nodoTextoPantalla.nodeValue = ' ';
    break;
    case '=':
    var resultado = eval(nodoTextoPantalla.nodeValue);
    nodoTextoPantalla.nodeValue = resultado;
    break;
    default:
    nodoTextoPantalla.nodeValue = nodoTextoPantalla.nodeValue + tecla;
    break;}*/
  if (tecla == 'C') {
    nodoTextoPantalla.nodeValue = ' ';}
  else if (tecla == '=') {
    var resultado = eval(nodoTextoPantalla.nodeValue);
    nodoTextoPantalla.nodeValue = resultado;}
  else {
    nodoTextoPantalla.nodeValue = nodoTextoPantalla.nodeValue + tecla;} 
}
</script>
</head>
<body><div id="cabecera"><h2>Cursos aprenderaprogramar.com</h2><h3>Ejemplo calculadora JavaScript</h3></div>
<!-- Calculadora -->
<div id="calculadora">
                <!-- pantalla y tecla limpiar -->
                <div class="parteSuperior">
                               <span class="limpiar" onclick="pulsada('C')">C</span>
                               <div class="pantalla"> </div> <!--Ojo tenemos un espacio para que exista nodeValue-->
                </div>
                <div class="teclas">
                               <!-- operadores y otras teclas -->
                               <span onclick="pulsada('7')">7</span>
                               <span onclick="pulsada('8')">8</span>
                               <span onclick="pulsada('9')">9</span>
                               <span class="operador" onclick="pulsada('+')">+</span>
                               <span onclick="pulsada('4')">4</span>
                               <span onclick="pulsada('5')">5</span>
                               <span onclick="pulsada('6')">6</span>
                               <span class="operador" onclick="pulsada('-')">-</span>
                               <span onclick="pulsada('1')">1</span>
                               <span onclick="pulsada('2')">2</span>
                               <span onclick="pulsada('3')">3</span>
                               <span class="operador" onclick="pulsada('/')">÷</span>
                               <span onclick="pulsada('0')">0</span>
                               <span onclick="pulsada('.')">.</span>
                               <span class="igual" onclick="pulsada('=')">=</span>
                               <span class="operador" onclick="pulsada('*')">x</span>
                </div>
</div>
</body>
</html>
Citar
2) Utilizando el ejemplo de código que usa la función eval en la función <<function componer(sentido)>> que hemos visto dentro del código de los ejemplos, crea una página web donde existan dos botones que pongan “Adelante” y “Atrás”, de modo que cuando se pulsen den lugar a que se llame la función componer(sentido). En esta función, a través de la función eval se ejecutará moverImagen('adelante') ó moverImagen('atras') según el parámetro recibido. La función moverImagen(sentido) puede contener un simple mensaje indicando el valor del parámetro <<sentido>> recibido.
Código: [Seleccionar]
<!DOCTYPE html>
<html lang="es" dir="ltr">
  <head>
    <meta charset="utf-8">
    <title>JavaScript - Función Eval y acceso nodo usando getElementsByClassName - CU001133E</title>
    <style type="text/css">
      #cont_botones {
        background-color: grey;
        border: solid 2px black;
        border-radius: 5px;
        min-width: ;
        width: 500px;
        margin: auto;
        overflow: hidden;
        padding: 15px;
        display: flex;
        justify-content: center;
        align-items: center;
      }
      .botones {
        border: 2px solid white;
        float: left;
        background-color: green;
        border-radius: 5px;
        height: 40px;
        width: 150px;
        display: flex;
        justify-content: center;
        align-items: center;
        margin-left: 15px;
        }
      .botones:hover {
        background-color: blue;
        color: white;
      }
    </style>
    <script type="text/javascript">
    function componer(sentido) {
      var accion = 'mover';
      var sobreElemento = 'Imagen';
      var haciaDonde = sentido;
      var llamada = accion + sobreElemento+'(\''+haciaDonde+'\')';
      alert ('<<' + sentido + '>>');
      eval(llamada);
    }
    </script>
  </head>
  <body>
    <div id="cont_botones">
      <div class="botones" onclick="componer('adelante')">
        <span>Adelante</span>
      </div>
      <div class="botones" onclick="componer('atras')">
        <span>Atrás</span>
      </div>
    </div>
  </body>
</html>

Gracias, un saludo.

5
Hola compañero/as

Adjunto el ejercicio CU01132E esperando haberlo hecho bien ahora y en el lugar correcto. Pido disculpas a los moderadores del foro por anteriores mal subidos por mal entender a mi manera las reglas  :-[

Código: [Seleccionar]
<!DOCTYPE html>
<html lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">
    <title>Ejercicio CU01132E</title>
    <script type="text/javascript">
      function deletrear(){
        var palabra, msg;
        palabra = prompt('Introduzca una palabra: ');
        msg = 'La palabra tiene ' + palabra.length + ' letras: \n';
        var i = 0
        while (i < palabra.length) {
          i++;
          msg = msg + 'Letra ' + (i) + ': ' + palabra.charAt(i-1) + '   ';
          }
          if (palabra.length == 0) {alert ('No ha introducido ninguna palabra :(');}
        else {
          alert (msg);
        }
      }
    </script>
  </head>
  <body>
    Pulsar <span onclick="deletrear()">aquí</span> para deletrear.
  </body>
</html>

Gracias, un saludo.

6
!Buenas¡ Me he atrevido a añadir mi primer ejercicio en estos foros, el ejercicio CU01131E del curso de desarrollo web con JavaScript y ejercicios resueltos.

No me he complicado mucho en los estilos y centrándome más en el JavaScript.

Citar
EJERCICIO

1) Crea una función que pida una palabra al usuario y usando un bucle for y el método charAt, muestre cada una de las letras que componen la entrada. Por ejemplo si se introduce “ave” debe mostrar:

Letra 1: a

Letra 2: v

Letra 3: e

2) Crea una función denominada mostrarContParrafos, que utilizando el acceso a los nodos del DOM de tipo párrafo, muestre el texto que contienen. Por ejemplo para el código de ejemplo visto anteriormente el resultado debería ser: Párrafo 1 contiene: manzana; Párrafo 2 contiene: pera. Párrafo 3 contiene: fresa. Párrafo 4 contiene … (etc., hasta que no haya más párrafos).


Código: [Seleccionar]
<!DOCTYPE html>
<html>
<head>
<title>Ejemplo JavaScript - aprenderaprogramar.com</title>
<meta charset="utf-8">
<style type="text/css">
  h1 {
    color: red;
  }
  h2 {
    color: yellow;
  }
</style>
<script type="text/javascript">
  function deletreador(){
    var palabra;
    palabra = prompt ('Elige una palabra');
    var subpalabra = [];
    var msg='Nº caracteres de la palabra: ' + palabra.length;
    var i;
    i=0;
    for (var i = 1; i <= palabra.length; i++) {subpalabra[i]=palabra.charAt(i-1);}
    for (var i = 1; i <= palabra.length; i++) {msg = msg + '\n' + subpalabra[i] + '\n';}
    alert (msg);
  }
 function mostrarContParrafos() {
    var parrafos = document.getElementsByTagName('p');
    var msg = 'El contenido de los párrafos es: ' + '\n';
    for (var i = 0; i < parrafos.length; i++) {msg= msg + 'El párrafo ' + (i+1) + ' contiene: "' + parrafos[i].innerHTML + '"\n';}
    alert (msg);
  }

 
</script>
</head>
<body>
  <h1>Deletreador de palabras</h1>
  <p>Para que el script empiece</p>
  <p>tiene que pulsar</p>
  <p>dónde le indica</p>
  <h2 onclick="deletreador()">AQUÍ</h2>
  <h2 onclick="mostrarContParrafos()">Contar párrafos aquí</h2>
</body>
</html>

Un saludo.

7
Comunidad / Presentación
« en: 28 de Abril 2020, 14:42 »
¡Hola a todos!

Con 40 años que van a caer en nada y aprovechando la cuarentena y parón laboral, me ha dado por embarcarme a programar desde cero. Espero aprender mucho y ayudar no sé en qué de momento, pero en lo que se pueda.

Un saludo a todos y felicitaciones por los cursos de aprederaprogramar.com

Páginas: [1]

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".