domingo, 9 de noviembre de 2014

JavaScript

He aquí el JavaScript de DAW 


ctivitat núm. 2

Bloc 3 - Bucles

1.El factorial d'un nombre enter n és una operació matemàtica que consisteix a multiplicar tots els factors n x (n-1) x (n-2) x ... x 1. Així, el factorial de 5 (escrit com 5!) És igual a: 5! = 5 x 4 x 3 x 2 x 1 = 120 Utilitzant l'estructura for, crear un script que calculi el factorial d'un nombre enter.

var m = window.prompt("entra un numero :")
var suma=1;
for(n=m; n>1; n--) {
suma= suma * (n*(n-1))
n=n-1
}
window.alert(m+"! = "+suma)

2.Sol·licitar amb un prompt un nom, i després un nombre de repeticions.Imprimir en pantalla el nom  tantes vegades com indica el nombre de repeticions.

var nom = window.prompt("dame tu nombre ")
var repet = window.prompt("dime cuantas veces quieres que te lo repita ")
var str="\n"
while(repet>0)
{
str=str+nom+"\n"
repet--
}

3. Imprim ir els primers 100 números senars, exceptuant tots els que pertanyen a la desena del 50 (es a dir: 51, 53, 55, 57 i 59).

var str=""
for(i=1; i<100; i++)
{
if(i==50) i=60
if(i%2!=0)
str=str+","+i
}
window.alert(str)

4. Anar demanant números fins que entrin el zero, en aquest moment calcular la mitja aritmètica dels nombres entrats.

var suma=0;
var nums=0;
do{
var n = parseInt(window.prompt("dame un numer! (cero para salir)"))
if(n!=0 && !isNaN(n)){
suma=suma+n
nums++
}
}while(n!=0)
window.alert("has entra "+nums+" numeros y la media
es :"+Math.round(suma/nums,3));


5. Supose m que per qualsevol motiu, el nostre ordinador no sap fer l’operació multiplicar, feu un  programa que demani dos números i retorni el seu producte, sense fer servir l’operador * (feu servir sumes successives).

do{ var a = parseInt(window.prompt(" dame un numero ") )
}while(isNaN(a))
do{ var b = parseInt(window.prompt(" dame otro y lo multiplico con el
anterior" ))
}while(isNaN(b))
var suma=0
for(i=a; i>0; i--)
suma=suma+b
window.alert(a+"*"+b+"="+suma)

6 . Igual a l’anterior però amb la divisió , ha de retornar la part entera de dividir
el més gran entre el més petit i el residu

do{ var a = parseInt(window.prompt(" dame un numero ") )
}while(isNaN(a))
do{ var b = parseInt(window.prompt(" dame otro numero!" ))
}while(isNaN(b))
if(a>b){
var gran=a
var petit=b
}else{
var gran=b
var petit=a
}
var g2=gran
var p2=petit
for(i=0; gran>=petit; i++)
gran=gran-petit
window.alert(g2+"/"+p2+"="+(i))

7. Feu un programa en JavaScript que faci una pregunta qualsevol amb la instrucció prompt, i que tot seguit informi del número de milisegons que ha trigat l’usuari en contestar -la. (Pista, captura els milisegons abans i de sprés  de la pregunta i calcula la diferència).


window.alert("estas preparado?")
var d = new Date();
var n = parseInt(d.getMilliseconds());
var respuesta = window.prompt("hola")
var d2 = new Date();
var n2 = parseInt(d2.getMilliseconds());
var temp = n2-n
if(temp<0)
temp=-1*temp
window.alert("has tardando en contestar "+temp+" milisegundos")

8 . Demana mitjançant prompt la data de naixement d’una persona i calcula la seva edat real.

var anio =window.prompt("dime el año en que naciste (yyyy)")
var mes = window.prompt("dime el mes en que naciste (mm)")
var dia = window.prompt("dime el dia en que naciste (dd)")
window.alert("ahora voy a hacer magia y adivinaré que edad tienes!")
var date1 = new Date(anio, mes, dia)
var date2 = new Date()
var dias = parseInt((date2 - date1) / (1000 * 60 * 60 * 24))
var tus_a = parseInt(dias/365)
var tus_m = parseInt((dias%365)/30)+1
var tus_d = parseInt((dias%365)%30)+1
window.alert("tu tienes (mas o menos) "+tus_a+" años "+tus_m+" mese y
"+tus_d+" dias ")


9. Feu un programa en JavaScript que es pensi un número entre 1 i 100. Tot seguit ha de demanar a l’usuar i que entri un número, si no l’encerta se li informa si s’ha passat o s’ha quedat curt i li torna a demanar un altre. El programa acaba quan s’encerti el número. En aquest moment s’ha de felicitar
a l’usuari i comunicar – li el número d’intents que ha necessitat per encertar - lo. Haureu d’utilitzar molts dels coneixements estudiats fins ara: bucles, condicions, instruccions prompt i alert, operadors, el mètode Math.random... var num = Math.round(Math.random()*100);


var intentos = 0
var salir=false
window.alert("vamos a jugar a un juego, yo pienso en un numero y tu tienes
que acertar! si?")
window.alert("Estoy pensando en un numero...... dame un segundo !")
do{
window.alert("Vale ya lo tengo !!!");
var str="Entra un numero de 0 a 100 "
do{
var intento = window.prompt(str)
if(intento<num)
str=" Sube !!!"
else
str=" Baja !"
intentos++
}while(intento!=num)
window.alert("Felicidades lo has acertado!!!!\nEl numero es "+num+", y en
solo "+intentos+" intenteos")

var op = window.prompt("quieres volver a jugar? \n 1. Si \n 2. No ")
if(op==2 || op == "no" || op =="No" || op=="NO")
salir=true
}while(!salir)
window.alert("Este juego es entretenido, pasate por aqui cuando quieras, un
saludo!")

10.Feu un programa que demani una frase i que mostri per pantalla totes les vo cals que conté (tant majúscules com minúscules). 


var text = window.prompt("oye tu, entra un texto en la caja de abajo !")
text = text.toUpperCase();
var a=0;
var e=0;
var i=0;
var o=0;
var u=0;
for(x=0; x<text.length; x++)
{
switch(text.charAt(x))
{
case 'A':
case 'a':
a++
break;
case 'E':
case 'e':
e++
break;
case 'I':
case 'i':
i++
break;
case 'O':
case 'o':
o++
break;
case 'U':
case 'u':
u++
break;
}
}s
tr =" a: "+a+"\n e: "+e+"\n i: "+i+"\n o: "+o+"\n u: "+u;
window.alert("en el texto '"+text+"' se encuentran las siguientes vocales
\n"+str)

11 . Feu un programa que demani una frase i que la mostri escrita al revés. 

var str = window.prompt("entra tu mejor frase para ligar :")
window.alert("Esto es lo que entiende los demás: "+str.split('').reverse().join(''))


12 . Feu un programa que demani una frase i que digui si és un palíndrom. Un palíndrom és una frase que es llegeix igual d’esquerra a dreta que de dreta a esquerra (normalment sense tenir en compte els signes d’interrogació, de puntuació ni els accents), Exemple:  Meló verd, net i tendre, volem . O la ballarina Sara Varas

var str = window.prompt("entra una frase, a ver si es palindrom")
str = str.replace(/\s/g ,'')//quitar los espacios
str = str.toUpperCase()
str = str.replace(/(,*)(\.*)(\'*)(\-*)/g,'')
str = str.replace(/Ó+/g,'O')
if(str==str.split('').reverse().join(''))
window.alert(str+"\n--- SI es palindrom ---")
else
window.alert(str+"\n---NO es palindrom--")


13. Feu un programa que demani una frase i que escrigui la sum a de tots els dígits numèrics que contingui, per exemple Tarragona 2017 escriurà: 10 (2+0+1+7), si no en té cap escriurà zero

var str_v1 = window.prompt("dame una frase")
str=str_v1.split('')//convertir en array
var suma=0;
for(i=0; i<str.length; i++)
if(!isNaN(parseInt(str[i])) && isFinite(parseInt(str[i])))
suma = suma + parseInt(str[i])
window.alert("en la frase '"+str_v1+"' la suma de los digitos es : "+suma)
















No hay comentarios:

Publicar un comentario