vuoi
o PayPal
tutte le volte che vuoi
COPIARE PARTE DI UN VETTORE IN UN ALTRO
funzione che prende un array e un numero e restituisce un altro array in cui ci sono solo i numeri di
a più piccoli di x
function copia (a,x)
var i;
var b= new array (); //Array vuoto
for (i=0; i<a.length; i++)
[b.length]=a[i];
if (a[i]<x ) b
return b;}
var vet= new Array (8,2,7,3,5,7);
writeln (copia (vet,6));
Hai due array, la funzione deve restituire un terzo array in cui ci sono gli elementi che
appaiono nei due array precedenti nella stessa posizione
function conta (a,b) {
var i;
var c= new Array ();
for (i=0; i<a.length; i++) {
if (a[i]==b[i]) c[c.length] = a[i];
}
return c;
}
var vet1= new Array (8,2,7,3,5,7);
var vet2= new Array (8,4,7,6,5,4);
writeln (conta (vet1,vet2));
due array che restituiscono un solo array con gli elementi sia del primo che del secondo
function attacca (a,b) {
var i;
var c= new Array (); //Array vuoto
for (i=0; i<a.length; i++)
c[c.length] = a[i];
for (i=0; i<b.length; i++)
c[c.length] = b[i];
return c;}
var vet1= new Array (8,2,7,3,5,7);
var vet2= new Array (8,4,7,6,5,4);
writeln (attacca (vet1, vet2));
funzione che metta i pari e i dispari in due array diversi
function attacca (a) {
var i;
var b= new Array ();
var c = new Array ();
for (i=0; i<a.length; i++){
if (a[i]%2==0) b[b.length] =a[i];
else c[c.length]=a[i]
}
writeln (b);
writeln (c);
}
var vet= new Array (8,2,7,3,5,7);
writeln(attacca(vet));
riconoscere il linguaggio ab*a
function ling (a)
{
if (a.length<2) return false; //la stringa deve essere lunga almeno due
if (a[o]!='a') return false; //se la stringa non comincia con a false
if (a[a.length-1]!=‘a’) return false; //se la stringa non finisce con a false
var i;
for (i=1; i<a.length-1;i++){ //per tutti i caratteri dal secondo al penultimo
if (a[i]!='b'){ return false;}} //se non sono b restituisco false
return true;} //se non ho mai detto false allora true
riconosci il linguaggio abc*a
function ling (a)
{
if (a.length<3) return false;
if (a[o]!='a') return false;
if (a[1]!='b') return false;
if (a[a.length-1]!=‘a’) return false;
var i;
for (i=2; i<a.length-1;i++){
if (a[i]!='c'){ return false;}
return true;}
riconoscere la stringa a(bc)*a
function ling (a)
{
if (a.length<2) return false; //se la stringa non è lunga almeno 2 restituisco false
if (a[0]!='a') return false; //se la prima lettera non è a restituisco false
if (a[a.length-1]!='a') return false; // se l’ultima lettera non è a restituisco false
if (a.length%2!=0) return false; //se la lunghezza della stringa non è pari restituisco false
var i;
for (i=1; i<a.length-1;i=i+2){ //dalla seconda lettera fino alla penultima andando
avanti ogni volta della lunghezza della substringa in * restituisco false
if (a[i]!='b'|| a[i+1]!='c'){ return false;}} //se il primo elemento della substringa è diverso da
b oppure il secondo è diverso da c restituisco false
return true;} //sennò restituisco true
riconoscere il linguaggio ab(aab)*
function ling (a)
{
if (a.length<2) return false;
if (a[0]!='a') return false;
if (a[1]!='b') return false;
if (a.length-2%3!=0) return false; //-2 lunghezza parte fissa, 3 parte star
var i;
for (i=2; i<a.length;i=i+3){ //parto dal terzo elemento e vado avanti di tre alla volta
if (a[i]!='a' || a[i+1]!='a' || a[i+2]!='b'){ return false;}}
return true;}
riconosce il linguaggio a(b|c)*a
function ling (a)
{
if (a.length<2) return false;
if (a[0]!='a') return false;
if (a[a.length-1]!='a') return false;
var i;
for (i=1; i<a.length-1;i++){
if (a[i]!='b' && a[i]!='c'){ return false;}} //se l’elemento non è b e non è c allora false
return true;}
var vet=new Array ('a','b','b','c','a',);
writeln(ling(vet));
a(b*|c*)a
function ling (a)
{
if (a.length<2) return false;
if (a[0]!='a') return false;
if (a[a.length-1]!='a') return false;
if (a.length>2) { //se la stringa è più lunga di 2 e quindi tra le due a c’è qualcosa
if(a[1]!='b' && a[1]!='c') return false; //guardo se la prima cosa che c’è nel mezzo è o b o c
altrimenti false
var i;
for (i=2(?); i<a.length-1;i++){ //dal secondo elemento in poi fino al penultimo
if (a[i]!=a[1]){ return false;}}} //se l’elemento non è uguale a a[1] allora false
return true;}
var vet=new Array ('a','b','b','b','a');
writeln(ling(vet));