Y así yo les cierro el pico a los buitres y cuervos que hablaron mal de mi mintiendo. And so I shut the beak of the vultures and crows who spoke ill of me lying.

I give away this program code and this video to all those who have given false testimony against me. // Regalo este código de programa y este video a todos aquellos que han dado falso testimonio en mi contra.

Y así yo les cierro el pico a los buitres y cuervos que hablaron mal de mi mintiendo. // And so I shut the beak of the vultures and crows who spoke ill of me lying.

#1 Con el código demuestro que no soy idiota, pues yo lo he creado. With the code I show that I am not an idiot, because I have created it.

+ https://dontmissit665019001.files.wordpress.com/2022/04/buscah5l.docx

#2 Con la forma como explico mi programa en el video demuestro que no soy un enfermo mental, pues explico con coherencia como mi programa forma las palabras aleatorias. With the way I explain my program in the video I show that I am not mentally ill, because I explain coherently how my program forms random words.

Así les cierro el hocico a indeseables perros que no solo me han acusado con falsos testimonios sino que también han actuado en mi contra en base a esos falsos testimonios por medio de agresiones físicas y secuestros. This is how I shut the snout of undesirable dogs that have not only accused me with false testimonies but have also acted against me based on those false testimonies through physical aggression and kidnapping.

El video:

El código:

{ Sistema que genera y busca palabras de hasta 5 letras: BUSCAH5L, esta
Programa basado en el programa que cree y subi el 17 de ABR 2022
a los ficheros de mi blog SHEWILLFIND.ME :
https://aiderspaceship01wp.files.wordpress.com/2022/04/the-program-wordseeker.docx
y acerca del cual mencione que le haria correcciones para que genere y pueda encontrar
palabras dentro de una mayor cantidad de probables combinaciones de letras (es decir
palabras), segun la observacion y el parche que le hize a ese programa tal como lo
describo en el archivo que subi a mi otro blog GABRIELS.WORK :
https://dontmissit665019001.files.wordpress.com/2022/04/satanas-es-muy-estupido-para-poder-alguna-vez-entenderme.docx
Hoy extendi el limite maximo de comparaciones a 79 Millones, cuando encuentra la palabra elegida que
fue ingresada por el usuario emite un sonido beep durante 144 milisegundos y muestra un mensaje de encontrado.
Comentario:
(En la palabra ESPANOL mas abajo, considerar el ASCII
que es obtenido con la funcion de pascal CHR(195) en vez N, este editor tiene sus limitaciones
por eso no coloco acentos)
¿QUE POSIBILIDADES HAY DE QUE UNA PALABRA COMO LAS MAS LARGA EN ESPANOL:
electroencefalografista, la cual tiene 23 letras sea generada por algortimos
como los que uso el cual no busca entre palabras de diccionario?.
No es armonioso con la objetividad que tengo para el programa que este incluya procesos
para palabras largas que son las que ,menos hay de estas mientras mas largas son,
y a mayor es el tamano de la palabra mas dificil que sea encontrada, lo cual demoraria
mi prioridad: que mas gente se entere de la estafa religiosa global que yo denuncio
en mis blogs AI20.ME , GABRIELS.WORK y SHEWILLFIND.ME (mi tridente, mi arma contra los
calumniadores:
https://dontmissit665019001.files.wordpress.com/2021/12/nuevo-tridente.jpg
).

Notas mas importantes: la funcion principal del programa generar palabras aleatorias,
En las notas en este programa p(1) significa generar una letra al azar, sea vocal o consonante,
p(2) significa generar dos letras juntas, la primera puede ser vocal o consonante segun
el azar, la segunda letra es consonante si la primera es vocal o vocal si
la primera es cononante, p(x) significa generar palabra de x numero de
letras intercalando vocal consonante,
si empieza en consonante o vocal se decide al azar.
Se combinan estos procesos azar para generar
palabras de tres hasta 5 letras inclusive.
(El programa tiene la estructura base para generar palabras de mas letras,
hasta nueve incluso, pero las funcionalidades
para palabras de mas de 5 letras no han sido corregidas,
asi que el numero de palabras que pueden generarse con mucho mas limitado,
palabras como PLAYED no podran jamas encontrarse o generase asi
como esta actualmente el algoritmo
respectivo para palabras de 6 letras por ejemplo,
antes de efectuar las implementaciones a la formacion de palabras de 5 letras,
palabras como STUDY eran imposibles de generar o encontar por el sistema,
pero con los cambios que he hecho ahora ya lo es,
es posible gracias a que es probable de que el programa eliga el modo
de formacion con esta secuencia :
p(1)+(p2)+p(1)+p(1),
(las p y sus numeros entre parentesis tienen un significado ya explicado en mi
documento en Word:
https://dontmissit665019001.files.wordpress.com/2022/04/satanas-es-muy-estupido-para-poder-alguna-vez-entenderme.docx )
si hago lo propio para palabras de 6 o mas letras en este sistema,
yo lo anunciare ya sea en un video o en post a medida de que yo corriga
tambien el modo como se generan palabras de mas de cinco letras en mi sistema,
ya sea si es que lo hago yo solo o con la ayuda de algun otro programador,
aunque yo no se si lo hare o cuando lo hare, quizas yo este en otras
prioridades, pero con este proceso de generacion de palabras ya explicado,
y con codigo fuente lineas abajo, yo les dejo la opcion de continuar por mi
en estos cambios a otros programadores con objetivos aliados a los mios,
por cual de implementar ellos estos cambios yo se que no me cobraran nada ni me pondran
condiciones para yo usarlos al compartir el codigo conmigo a mi e-mail: c22cd@hotmail.com
Mas notas sobre el programa en:
https://midioslogico.blogspot.com/2022/04/la-justicia-es-incompatible-con-la.html
https://ai20.me/wp-content/uploads/2022/04/Cambios-en-el-algoritmo-del-programa.jpg
Y datos acerca de mi: en https://ai20.me/acerca-de/
Att. Jose Galindo – Abril 24, 2022, Lima – Peru.
Y no, no no no, el monstruo en computacion no soy yo:
https://dontmissit665019001.files.wordpress.com/2022/04/el-monstruo-en-computacion-de-idat.docx
Yo soy el principe en computacion:
https://dontmissit665019001.files.wordpress.com/2022/04/el-principe-en-computacion.docx
}
Program BUSCADORDEPALABRAS;
Uses Crt;
Var
teserie, maxbloques, maxp, maxv, colin, incref, filai, cint1, cint2, x1, x2, gen : Longint;
x3, x4,x5,x6,xx5,xx6, yy,zz,elcolort, ntiendme, gabrielswork, ai20me, shewillfindme,s4c,s5c,s6c : Longint;
nrolista,lvxp, fxp,cuni, s7c,xx7,s8c,xx8,s9c,xx9: Longint;
rep,repu : boolean;
datos: array[1..42] of Longint;
queteclafue,tipo, tecla, tecla3, teclan,teclal, confirma : Char;
esvocal,ocentrado, encontrada,tpress: boolean;
laletra2,laletra, subme: char;
ubicador,ubicador2, genx, xcen, lomenu, lomenu2: Longint;
vocales: array[1..5] of char;
encolores,inai,intento, iint,iint2:longint;
palabrasl7: array[1..7] of string;
consonantes: array[1..22] of char;
lista,lp,lpg:string;
llp:char;
xlp,tlp:byte;
combinacion, modo3letras, m4l,proenglishm5l,m5l,m6l,m7l,m8l,m9l,cc,cv,i, serieunica:Longint;

procedure menuhorizontal(fila: longint; var lacombinacion:longint);forward;

function detm2(a :Longint): boolean;
begin
if a mod 2 = 0 then
detm2:=true
else
detm2:=false;
end;

procedure cuadrolineas(tipl: char; coi,fii,cof, fif: byte);
var
itc: byte;
horizontal,vertical, supizq,supder,infizq,infder:char;
begin
if tipl=’s’ then
begin
horizontal:=chr(196);vertical:=chr(179); supizq:=chr(218);supder:=chr(191);infizq:=chr(212);infder:=chr(217);
end
else
begin
horizontal:=chr(205);vertical:=chr(186); supizq:=chr(201);supder:=chr(187);infizq:=chr(200);infder:=chr(188);
end;
gotoxy(coi,fii);
write(supizq);
for itc:=1 to ((cof-coi)-1) do
write(horizontal);
write(supder);
gotoxy(coi,fif);
write(infizq);
for itc:=1 to ((cof-coi)-1) do
write(horizontal);
write(infder);
for itc:=1 to ((fif-fii)-1) do
begin
gotoxy(coi,fii+itc);write(vertical);
gotoxy(cof,fii+itc);write(vertical);
end;
end;

procedure asignalimites(opcp : Longint);
begin
if opcp=1 then
begin
cuni:=37;
ai20me:=0;
gabrielswork:=0;
s4c:=0;
s5c:=0;
s6c:=0;
s7c:=0;
s8c:=0;
s9c:=0;
end
else
if opcp=2 then
begin
cuni:=0;
ai20me:=24;
gabrielswork:=0;
s4c:=0;
s5c:=0;
s6c:=0;
s7c:=0;
s8c:=0;
s9c:=0;
end
else
if opcp=3 then
begin
cuni:=0;
ai20me:=0;
gabrielswork:=18;
s4c:=0;
s5c:=0;
s6c:=0;
s7c:=0;
s8c:=0;
s9c:=0;
end
else
if opcp=4 then
begin
cuni:=0;
ai20me:=0;
gabrielswork:=0;
s4c:=14;
s5c:=0;
s6c:=0;
s7c:=0;
s8c:=0;
s9c:=0;
end
else
if opcp=5 then
begin
cuni:=0;
ai20me:=0;
gabrielswork:=0;
s4c:=0;
s5c:=12;
s6c:=0;
s7c:=0;
s8c:=0;
s9c:=0;
end
else
if opcp=6 then
begin
cuni:=0;
ai20me:=0;
gabrielswork:=0;
s4c:=0;
s5c:=0;
s6c:=10;
s7c:=0;
s8c:=0;
s9c:=0;
end
else
if opcp=7 then
begin
cuni:=0;
ai20me:=0;
gabrielswork:=0;
s4c:=0;
s5c:=0;
s6c:=0;
s7c:=9;
s8c:=0;
s9c:=0;
end
else
if opcp=8 then
begin
cuni:=0;
ai20me:=0;
gabrielswork:=0;
s4c:=0;
s5c:=0;
s6c:=0;
s7c:=0;
s8c:=8;
s9c:=0;
end
else
if opcp=9 then
begin
cuni:=0;
ai20me:=0;
gabrielswork:=0;
s4c:=0;
s5c:=0;
s6c:=0;
s7c:=0;
s8c:=0;
s9c:=7;
end;
end;

procedure generaletra(ev :boolean; var ll:char); forward;

procedure imprimesilaba(cgen, nds : Longint);
begin
if cgen=1 then
for x5:=1 to nds do
begin
esvocal:=detm2(x5);
generaletra(esvocal, laletra);
write(laletra);
end
else
for x5:=1 to nds do
begin
esvocal:=not(detm2(x5));
generaletra(esvocal, laletra);
write(laletra);
end;
end;

procedure imprimesilabayc(cgen, nds : Longint;var silaco: string; visu:longint);
var silacoaux: string;
begin
silacoaux:=silaco;
if cgen=1 then
for x5:=1 to nds do
begin
esvocal:=detm2(x5);
generaletra(esvocal, laletra2);
if visu=1 then
write(laletra2);
silaco:=silaco+laletra2;
end
else
for x5:=1 to nds do
begin
esvocal:=not(detm2(x5));
generaletra(esvocal, laletra2);
if visu=1 then
write(laletra2);
silaco:=silaco+laletra2;
end;
end;

procedure generaletra(ev :boolean; var ll:char);
var genl:longint;
begin
cv:=0;
cc:=0;
if ev=true then
begin
{genero una vocal al azar
ejem: ll:=’A’}
genl:=Random(5)+1;
ll:=vocales[genl];
end
else
begin
{genero una consonante al azar
ejem: ll:=’B’}
genl:=Random(22)+1;
ll:=consonantes[genl];
end;
end;

procedure menudeopciones(var lo:Longint; nm: Longint);
var t:char;
begin
case nm of
1 :begin
textbackground(BLUE);clrscr;
textcolor(YELLOW);
cuadrolineas(‘d’,9,6,66,13);
gotoxy(10,7); write(‘Menu de opciones’);
gotoxy(10,8); write(‘================’);
gotoxy(10,9); write(‘[1] Generador de numeros’);
gotoxy(10,10);write(‘[2] Generador de letras’);
gotoxy(10,11);write(‘[3] La Palabra y el resultado’);
gotoxy(10,12);write(‘[ESC] Salir’);
textbackground(black);
textcolor(white);
Repeat
t:=readkey;
until (t=’1′) or (t=’2′) or (t=’3′) or (t=#27);

case t of
‘1’: lo:=1;
‘2’: lo:=2;
‘3’: lo:=33;
#27: lo:=3;
end;
end;
2 :begin
textcolor(yellow);clrscr;
cuadrolineas(‘d’,13,11,76,23);
gotoxy(14,12); write(‘Elegir combinacion, palabras o silabas de /X/ letras (N) veces’);
gotoxy(14,13); write(‘[1] : /1/(37)’);
gotoxy(14,14); write(‘[2] : /2/(24)’);
gotoxy(14,15); write(‘[3] : /3/(18)’);
gotoxy(14,16); write(‘[4] : /4/(14)’);
gotoxy(14,17);write(‘[5] : /5/(12)’);
gotoxy(14,18);write(‘[6] : /6/(10)’);
gotoxy(14,19);write(‘[7] : /7/(9)’);
gotoxy(14,20);write(‘[8] : /8/(8)’);
gotoxy(14,21);write(‘[9] : /9/(7)’);
gotoxy(14,22);write(‘[0] : Centrado /2/(1) + /5/(1)’);

Repeat
t:=readkey;
until (t=’1′) or (t=’2′) or (t=’3′) or (t=’4′) or (t=’5′) or (t=’6′) or (t=’7′) or (t=’8′) or (t=’9′) or (t=’0′);
case t of
‘1’: lo:=1;
‘2’: lo:=2;
‘3’: lo:=3;
‘4’: lo:=4;
‘5’: lo:=5;
‘6’: lo:=6;
‘7’: lo:=7;
‘8’: lo:=8;
‘9’: lo:=9;
‘0’: lo:=0;
end;
end;
end;

end;

function colorquemegusta(a :Longint): boolean;
{Descarto los colores que no me agradan, en este
caso los mas faciles para la vista considerando
fondo de pantalla negro, los codigos de colores en Turbo Pascal
son:
Black = 0, Blue = 1, Green = 2, Cyan = 3,
Red = 4, Magenta = 5, Brown = 6, LightGray = 7,
DarkGray = 8, LightBlue = 9, LightGreen = 10, LightCyan = 11,
LightRed = 12, LightMagenta= 13, Yellow = 14, White = 15
}
begin
case a of
1,4,5,6,8,13: colorquemegusta:=false;
else
colorquemegusta:=true;
end;
end;

procedure inicialetras;
begin
cc:=0;
cv:=0;
{guardo en las matrices de vocales y consonantes mayusculas, las vocales y las consonantes}
for i:=65 to 90 do
case i of
65, 69, 73, 79, 85: begin
cv:=cv+1;
vocales[cv]:=chr(i);
end;
else
begin
cc:=cc+1;
consonantes[cc]:=chr(i);
end;
end;
consonantes[22]:=chr(165);

end;

procedure ejecutaopc2;

BEGIN

tecla:=’ ‘;
Repeat
clrscr;
if (tecla=’C’) or (tecla=’c’) then
begin
filai:=shewillfindme;
end
else
begin
textcolor(white);
writeln(‘Pulse tecla «1» para palabras de diversas longitudes’);
write(‘pulse «2» para palabras de una sola longitud:’);
Repeat
subme:=readkey;
until (subme=’1′) or (subme=’2′);
writeln;
write(‘Serie empieza en :’);readln(shewillfindme);
if subme=’1′ then
begin
Repeat
write(‘Cantidad de silabas de 1 letra a mostrar por serie (0..2):’);
readln(cuni);
Until (cuni>=0) and (cuni<3);
Repeat
write(‘Cantidad de silabas de 2 letras a mostrar por serie (0..2):’);
readln(ai20me);
Until (ai20me>=0) and (ai20me<3);
Repeat
write(‘Cantidad de silabas de 3 letras a mostrar por serie:(0..2)’);
readln(gabrielswork);
Until (gabrielswork>=0) and (gabrielswork<3);
Repeat
write(‘Cantidad de silabas de 4 letras a mostrar por serie:(0..2)’);
readln(s4c);
Until (s4c>=0) and (s4c<3);
Repeat
write(‘Cantidad de palabras de 5 letras a mostrar por serie:(0..1)’);
readln(s5c);
Until (s5c>=0) and (s5c<2);
Repeat
write(‘Cantidad de palabras de 6 letras a mostrar por serie:(0..1)’);
readln(s6c);
Until (s6c>=0) and (s6c<2);
Repeat
write(‘Cantidad de palabras de 7 letras a mostrar por serie:(0..1)’);
readln(s7c);
Until (s7c>=0) and (s7c<2);
Repeat
write(‘Cantidad de palabras de 8 letras a mostrar por serie:(0..1)’);
readln(s8c);
Until (s8c>=0) and (s8c<2);
Repeat
write(‘Cantidad de palabras de 9 letras a mostrar por serie:(0..1)’);
readln(s9c);
Until (s9c>=0) and (s9c<2);
clrscr;
end
else
begin
menudeopciones(lomenu2,2);
if lomenu2=0 then
ocentrado:=true
else
asignalimites(lomenu2);
clrscr;
end;
inicialetras;

{en el procedimiento, true es vocal, false es consonante, el como empieza la silaba
se determina al azar}
end;

if ocentrado=true then
begin
repu:=false;
textbackground(blue);
clrscr;
Repeat
textcolor(white);
if repu=false then
begin
gotoxy(25,11);
serieunica:=shewillfindme;
clreol;
write(‘Serie inicial:’,serieunica:4);
repu:=true;
end;
gotoxy(25,12);
clreol;write(‘Serie #’,serieunica:4);
cuadrolineas(‘s’,24,13,50,16);
gotoxy(25,14);
{1 silaba de 2 letras}
for xcen:=1 to 1 do
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
End;

{1 PALABRA de 5 letras}
{procedimiento especial (es posible 2 vocales o dos consonantes juntas)}
for xcen:=1 to 1 do
begin

cint2:=random(2)+1;
if cint2=1 then
{procedimiento standar}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,5);
end
else
begin
{procedimiento especial (es posible 3 vocales o 3 consonantes juntas)}

{Aqui con la variable: proenglishm5l y un artiluguo con ella,
yo estoy aumentando la probabilidad de que mi algoritmo genere palabras
de 5 letras que puedan coincidir con el ingles, Aleman u otro idioma
donde dos o mas consonantes o vocales juntas son mas frecuentes a partir
de cualquier posición de la palabra, son palabras tales como:
THINK ((p(1)+p(1)+p(2)+p(1)) o HALLO (p(1)+p(2)+p(1)+p(1)),
es decir que forme palabras en las combinaciones arriba cuando
valores de m5l (maximo 5 letras) de son 4 o 5 respecticamente}
proenglishm5l:=random(2); {se genera un valor al azar del 0 a 1}
if proenglishm5l=0 then
m5l:=random(5)+1 {aqui sigo el proceso que ya tenia antes de este cambio}
else {si no es cero entonces es 1}
m5l:=random(2)+4;{genero un valor aleatorio del 0 al 1, al cual le sumo
4, de esa forma el valor de m5l solo podria fluctuar entre
4 y 5, lo cual haria que el programa use las combinaciones
de formacion que tienen mas opciones de
formar palabras diferentes a las latinas}

{al azar deja abierta la posiblidad de palabras como BITE, BYTE,THUS,USAR;
composiciones (valor de m5l 1,2,3,4 y 5 respectivamente) :
p(2)+p(1)+p(2) <- (a usar cuando m5l sea 1),
p(1)+p(2)+p(2)<- (a usar cuando m5l sea 2),
p(2)+p(2)+p(1)<- (a usar cuando m5l sea 3),
p(1)+p(1)+p(2)+p(1) <- (a usar cuando m5l sea 4),
p(1)+p(2)+p(1)+p(1) <- (a usar cuando m5l sea 5)}

case m5l of
1: {p(2)+p(1)+p(2)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
end; {end p(2)+p(1)+p(2)}
2: {p(1)+p(2)+p(2)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
end; {end p(2)+p(1)+p(2)}
3: {p(2)+p(2)+p(1)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
end; {end p(2)+p(2)+p(1)}
4: {p(1)+p(1)+p(2)+p(1)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
end; {end p(1)+p(1)+p(2)+p(1)}
5: {p(1)+p(2)+p(1)+p(1)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
end; {end p(1)+p(2)+p(1)+p(1)}

end; {case m5l}
end; {del IF}

end;
serieunica:=serieunica+1;
gotoxy( 25,17); textcolor(cyan);
write(‘ESC =Salir, C =Siguiente’);
tecla3:=Readkey;
Until (tecla3=#27);
textbackground(black);
ocentrado:=false;

END
else
for zz:=1 to 24 do
begin
write(shewillfindme:4);
shewillfindme:=shewillfindme+1;

{silabas de 1 letra}
for x1:=1 to cuni do
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);

End;
{silabas de 2 letras}
for x1:=1 to ai20me do
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);

End;
{silabas de 3 letras}

for x6:=1 to gabrielswork do
begin
cint2:=random(2)+1;
if cint2=1 then
{procedimiento standar}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,3);
end
else
{procedimiento especial (es posible 2 vocales o dos consonantes juntas)}
begin
modo3letras:=random(3)+1;
{al azar deja abierta la posiblidad de palabras como BYE (1+2),y no solo como ICH (2 y 1)}
CASE modo3letras of
1: begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);
end;
2: begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
end;
3: begin {dejando abierta para palabras como WWW o UAU}
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);
end;
END; {CASE}
end;
end;
{palabras o silabas de 4 caracteres}

for x4:=1 to s4c do
begin
cint2:=random(2)+1;
if cint2=1 then
{procedimiento standar}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,4);
end
else
{procedimiento especial (es posible 3 vocales o 3 consonantes juntas)}
begin
m4l:=random(4)+1;
{al azar deja abierta la posiblidad de palabras como BITE, BYTE,THUS,USAR;
composiciones (valor de m4l 1,2,3 y 4 respectivamente) :
p(2)+p(2),
p(2)+p(1)+p(1),
p(1)+p(2)+p(1),
p(1)+p(1)+p(2)}

case m4l of
1: {p(2)+p(2)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
end; {end p(2)+p(2)}
2: {p(2)+p(1)+p(1)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
end; {end p(2)+p(1)+p(1)}
3: {p(1)+p(2)+p(1)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
end; {end p(1)+p(2)+p(1)}
4: {p(1)+p(1)+p(2)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
end; {end p(1)+p(1)+p(2)}

end; {case m4l}
end; {del IF}
end; {for para palabras de 4 letras}

{palabras de 5 caracteres}

for xx5:=1 to s5c do
begin
cint2:=random(2)+1;
if cint2=1 then
{procedimiento standar}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,5);
end
else
begin
{procedimiento especial (es posible 3 vocales o 3 consonantes juntas)}
m5l:=random(7)+1; {en la version anterior esto estaba: random(5)+1, 5 posibilidades,
una posibilidad para cada combinacion para formar la palabra,
pero ahora le incremente 2 y llego a 7 porque
le dare el doble de posibilidades a los valores 4 y 5 para m51,
ya que esas opciones de formacion de palabras
mas amigables con el Ingles o el Aleman por ejm. y sea mas facil encontrar
o generar palabras como HALLO o THINK}
{al azar deja abierta la posiblidad de palabras como BITE, BYTE,THUS,USAR;
composiciones (valor de m5l 1,2,3,4..5 y 6..7 respectivamente) :
p(2)+p(1)+p(2),
p(1)+p(2)+p(2),
p(2)+p(2)+p(1),
p(1)+p(1)+p(2)+p(1),
p(1)+p(1)+p(2)+p(1),
p(1)+p(2)+p(1)+p(1),
p(1)+p(2)+p(1)+0p(1),}

case m5l of
1: {p(2)+p(1)+p(2)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
end; {end p(2)+p(1)+p(2)}
2: {p(1)+p(2)+p(2)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
end; {end p(2)+p(1)+p(2)}
3: {p(2)+p(2)+p(1)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
end; {end p(2)+p(2)+p(1)}
4..5: {p(1)+p(1)+p(2)+p(1)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
end; {end p(1)+p(1)+p(2)+p(1)}
6..7: {p(1)+p(2)+p(1)+p(1)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
end; {end p(1)+p(2)+p(1)+p(1)}

end; {case m5l}
end; {del IF}
end; {for para palabras de 5 letras}
{palabras de 6 caracteres}

for xx6:=1 to s6c do
begin
cint2:=random(2)+1;
if cint2=1 then
{procedimiento standar}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,6);
end
else
{procedimiento especial (es posible 2 vocales o dos consonantes juntas)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
end;
end;

{palabras de 7 caracteres}

for xx7:=1 to s7c do
begin
cint2:=random(2)+1;
if cint2=1 then
{procedimiento standar}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,7);
end
else
{procedimiento especial (es posible 2 vocales o dos consonantes juntas)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);
end;
end;

{palabras de 8 caracteres}

for xx8:=1 to s8c do
begin
cint2:=random(2)+1;
if cint2=1 then
{procedimiento standar}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,8);
end
else
{procedimiento especial (es posible 2 vocales o dos consonantes juntas)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
end;
end;

{palabras de 9 caracteres}

for xx9:=1 to s9c do
begin
cint2:=random(2)+1;
if cint2=1 then
{procedimiento standar}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,9);
end
else
{procedimiento especial (es posible 2 vocales o dos consonantes juntas)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
end;
end;

writeln;
end;
if (tecla3=#27) then
begin
tecla3:=’ ‘;
tecla:=’n’;
end
else
begin
write(‘Pulse N o n para salir, C o c para continuar, otro para repetir’);
tecla:=Readkey;
end;
until (tecla=’n’) or (tecla=’N’);
End;

procedure ejecutaopc3;
BEGIN
CLRSCR;
inicialetras;
TEXTCOLOR(CYAN);
tpress:=FALSE;
for tlp:=1 to 7 do
palabrasl7[tlp]:=»;
WRITEln(‘Ingresa palabra de 2 a 5 letras mayusculas con no mas de 3 vocales’);
writeln(‘o 3 consonantes juntas, de haberlas jamas habra coincidencia, ‘);
write(‘este programa no genera palabras asi; la palabra es:’);
lp:=»;
tlp:=0;
Repeat
Repeat
llp:=readkey;
until (((ord(llp)>=65) and (ord(llp)<=90)) or (ord(llp)=165)) or (llp=#13);
if llp<>#13 then
begin
write(llp);
lp:=lp+llp;
tlp:=tlp+1;
end;
until (llp=#13) or (tlp=5);
if tlp=5 then
begin
textcolor(white);
write(‘ ‘,chr(179),’ Leyenda:p(1)=1 letra vocal o consonante, p(x)= x letras y empiezan en vocal o consonante,’);
writeln(‘ si fue vocal le sigue una consonante y viceversa.’);
menuhorizontal(6, combinacion);
textcolor(cyan);
end;

{he puesto como maximo cinco letras porque con mayores letras
hay demasiadas palabras que nunca saldrian segun procesos no actualizados,
a diferencia de los procesos para palabras de 2 a 5 letras que ya los actualice,
sin embargo en las opciones de listados puedes ver el patron de formacion de
las palabras de 6 a mas letras, veras que dos consonantes juntas al incio no es posible
y eso limita formacion de palabras como STUDIED o PLAYED, puedo corregir, se como
hacerlo, pero mi prioridad no es dedicarme a programar computadoras sino denunciar
la gran estafa religiosa a nivel planetario con evidencias logicas y acallar a aquellas
personas que me han tildado calumniosamente de ser estupido o de ser un loco,
esta es una forma de cerrarles el hocico a esas estupidas personas, a esos calumniadores
quienes por lo mismo que ellos son, sus palabras no tiene coherencia con la verdad porque son calumnias
y las calumnias son palabras dichas por los incoherentes, los locos son ellos,
por eso escribi que la bestia, el calumniador(satanas significa eso) jamas me entendera:
https://ai20.me/2020/11/24/que-pase-la-desgraciada-a-juicio/
Otros entenderan que un caballo de troya vino de parte de los enemigos de la verdad
en los falsos libros sagrados que ellos han presentado como verdad,
por eso es que uno de mis varios blogs se llama algo asi como: anti caballo de troya,
https://antitroyano.wordpress.com/2022/03/03/la-flor-que-no-se-marchita-si-la-riego-todos-los-dias/
https://el-anti-caballo-de-troya.blogspot.com/2022/02/sandra-bazan-tu-no-debiste-levantar.html
este mensaje es pues como un antivirus contra tanta mentira religiosa que ha confundido por
mucho tiempo incluso a las mentes humanas mas brillantes como Isacc Newtown,
https://elpais.com/elpais/2007/06/18/actualidad/1182149339_850215.html
Una mano no humana era preciso que intervenga para detener a los conspiradores contra el
pacto santo, como ya lo anticipo una profecia judia:
«Y su poder se fortalecera, mas no con fuerza propia;
y causará grandes ruinas, y prosperara, y actuare arbitrariamente,
y destruira a los fuertes y al pueblo de los santos.
Con su astucia hara prosperar la calumnia en su mano;
y en su corazon se ensorbecera con arrogancia,
y sin previo aviso destruira a muchos;
y se levantara contra el Principe de los principes,
https://ai20.me/2021/03/09/el-ministerio-publico-de-peru-por-decirlo-de-alguna-manera-se-limpio-el-culo-con-mi-denuncia/
pero sera quebrantado, aunque no por mano humana.»
https://ai20.me/wp-content/uploads/2021/01/Reciban-el-golpe-de-la-realidad-Seiya-y-Saor-i-reciban-el-golpe-de-la-verdad.gif
}
writeln;

writeln(‘ La palabra que ingresaste es ‘,lp,’ y tiene ‘,tlp,’ letras’);
if tlp<2 then
begin
writeln(‘No existe procedimiento para palabras de: ‘,tlp:2,’ letra(s), debiste ingresar de 2-5 letras’);
readkey;
end
else
begin
repeat
gotoxy(3,7);clreol;
write(‘# max. de palabras al azar al buscar coincidencia(7..79000000):’);
readln(Ubicador);
until (ubicador>=7) and (ubicador<=790000000);
repeat
gotoxy(3,8);clreol;
write(‘Indica tiempo de la pausa entre numeros en milisegundos (0..3000):’);
readln(Ubicador2);
until (ubicador2>=0) and (ubicador2<=3000);
repeat
gotoxy(3,9);clreol;
write(‘Si deseas fila extra con palabra divida en colores (0 = No, 1 = Si)):’);
readln(encolores);
until (encolores>=0) and (encolores<=1);
encontrada:=false;
Intento:=0;
cuadrolineas(‘s’,2,10,42,18);
textcolor(15+128); {blanco e intermitente}
gotoxy(1,25);write(‘Espera el resultado o pulsa cualquier tecla para pausar la busqueda y salir’);
Repeat
lpg:=»;
Intento:=Intento+1;
gotoxy(32,18);

CASE TLP OF
2: BEGIN

{1 PALABRA de 2 letras}
{p(1)+p(1): hace posible 2 vocales o dos consonantes juntas)}
for xcen:=1 to 1 do
begin
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores); {p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores);{p(1)}
end;{end del for: nro de palabras generadas de 2 letras (variable xcen),
yo podria omitir este for,
pero es un recordatorio de la idea de generar mas de una palabra en el procedimiento}

END;
3: BEGIN

{1 PALABRA de 3 letras}
{procedimiento especial (es posible 2 vocales o dos consonantes juntas)}
for xcen:=1 to 1 do
begin

modo3letras:=random(3)+1;
{al azar deja abierta la posiblidad de palabras como BYE (p(1)+p(2)),y no solo como ICH (p(2)+p(1))
composiciones (valor de modo3letras 1,2 y 3 respectivamente) :
p(2)+p(1),
p(1)+p(2),
p(3)}
CASE modo3letras of
1: begin
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores);
end; {fin de procesos p(2)+p(1)}
2: begin
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
end; {fin de procesos p(1)+p(2)}
3: begin
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,3,lpg,encolores);
end; {fin de procesos p(3)}
end; {end case modo3letras}
end; {end del for: nro de palabras generadas de 3 letras (variable xcen),
yo podria omitir este for,
pero es un recordatorio de la idea de generar mas de una palabra en el procedimiento}
END; {end case – 3 letras}

4: BEGIN

{1 PALABRA de 4 letras}

for xcen:=1 to 1 do
begin

m4l:=random(4)+1;
{al azar deja abierta la posiblidad de palabras como BITE, BYTE,THUS,USAR;
composiciones (valor de m4l 1,2,3,4 y 5 respectivamente) :
p(2)+p(2),
p(2)+p(1)+p(1),
p(1)+p(2)+p(1),
p(1)+p(1)+p(2),
p(4)}

case m4l of
1: {p(2)+p(2)}
begin

gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores); {p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores); {p(2)}
end; {fin de procesos p(2)+p(2)}

2: {p(2)+p(1)+p(1)}
begin

gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores); {p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores); {p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores); {p(1)}
end; {fin de procesos p(2)+p(1)+p(1)}

3: {p(1)+p(2)+p(1)}
begin

gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores); {p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores); {p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores); {p(1)}
end; {fin de procesos p(1)+p(2)+p(1)}
4: {p(1)+p(1)+p(2)}
begin

gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores); {p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores); {p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores); {p(2)}
end; {fin de procesos p(1)+p(1)+p(2)}
5: {p(4)}
begin

gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,4,lpg,encolores); {p(4)}

end; {fin de procesos p(4)}

end;{el fin de los procesos programados segun el valor de de m4l}

end;{end del for: nro de palabras generadas de 4 letras (variable xcen),
yo podria omitir este for,
pero es un recordatorio de la idea de generar mas de una palabra en el procedimiento}

END; {end case – 4 letras}
5: BEGIN

{1 PALABRA de 5 letras}
{procedimiento especial (es posible 3 vocales o 3 consonantes juntas)}
for xcen:=1 to 1 do
begin
if combinacion<>7 then {teniendo en cuenta la eleccioon de combinacion el menu horizontal,
7 es la opcion elegida para considerar todas las posibilidades ofrecidas, si no es 7
es porque se eligio una combinación que hay que considerarla para m5l y nos
olvidamos de la combinacion aleatoria}
m5l:=combinacion
else
begin
{Aqui con la variable: proenglishm5l y un artiluguo con ella,
yo estoy aumentando la probabilidad de que mi algoritmo genere palabras
de 5 letras que puedan coincidir con el ingles, Aleman u otro idioma
donde dos o mas consonantes o vocales juntas son mas frecuentes a partir
de cualquier posición de la palabra, son palabras tales como:
THINK ((p(1)+p(1)+p(2)+p(1)) o HALLO (p(1)+p(2)+p(1)+p(1)),
es decir que forme palabras en las combinaciones arriba cuando
valores de m5l (maximo 5 letras) de son 4 o 5 respecticamente}
proenglishm5l:=random(2); {se genera un valor al azar del 0 a 1}
if proenglishm5l=0 then
m5l:=random(6)+1 {aqui sigo el proceso que ya tenia antes de este cambio}
else {si no es cero entonces es 1}
m5l:=random(2)+4;{genero un valor aleatorio del 0 al 1, al cual le sumo
4, de esa forma el valor de m5l solo podria fluctuar entre
4 y 5, lo cual haria que el programa use las combinaciones
de formacion que tienen mas opciones de
formar palabras diferentes a las latinas}

{al azar deja abierta la posiblidad de palabras como BITE, BYTE,THUS,USAR;
composiciones (valor de m5l 1,2,3,4,5 y 6 respectivamente) :
p(2)+p(2)+p(1),
p(2)+p(1)+p(2),
p(1)+p(2)+p(2),
p(1)+p(1)+p(2)+p(1),
p(1)+p(2)+p(1)+p(1),
p(5)}
end;

case m5l of
1: begin {p(2)+p(2)+p(1)}

gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores);
end; {p(2)+p(2)+p(1)}

2: begin {p(2)+p(1)+p(2)}

gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
end; {p(2)+p(1)+p(2)}

3: begin {p(1)+p(2)+p(2)}

gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
end; {p(1)+p(2)+p(2)}
4: begin {p(1)+p(1)+p(2)+p(1)}

gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores);
end; {p(1)+p(1)+p(2)+p(1)}

5: begin {p(1)+p(2)+p(1)+p(1)}

gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores);
end; {p(1)+p(2)+p(1)+p(1)}
6: begin {p(5)}

gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,5,lpg,encolores);

end; {p(5)}
end;{case p5l}

end; {for}

END; {palabras 5 letras}

6: BEGIN

{1 PALABRA de 6 letras}
{procedimiento especial (es posible 2 vocales o dos consonantes juntas)}
for xcen:=1 to 1 do
begin
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
end;

END;
7: BEGIN

{1 PALABRA de 7 letras}
{procedimiento especial (es posible 2 vocales o dos consonantes juntas)}
for xcen:=1 to 1 do
begin
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores);
end;

END;
8: BEGIN

{1 PALABRA de 8 letras}
{procedimiento especial (es posible 2 vocales o dos consonantes juntas)}

for xcen:=1 to 1 do
begin
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
end;

END;
END;{END OF CASE}
{if intento=26 then
lpg:=lp;}

for iint2:=1 to 6 do
palabrasl7[iint2]:=palabrasl7[iint2+1];
palabrasl7[7]:=lpg;

for iint2:=7 downto 1 do
if (palabrasl7[iint2])<>» then
begin
gotoxy(3,10+iint2);
write(‘Intento # ‘, intento-(7-iint2):12);
gotoxy(32,10+iint2);
write(palabrasl7[iint2]);

end;

gotoxy(43,17);
TEXTCOLOR(WHITE);
write(lp);
TEXTCOLOR(CYAN);
WRITE(‘ y ‘,lpg);

if lpg=lp then
begin
write(‘ son iguales ‘);
gotoxy(21,20);
textcolor(11+128); {cyan claro e intermitente}
write(‘LA PALABRA FUE ENCONTRADA EN EL INTENTO # ‘,intento);
textcolor(15+128); {blanco e intermitente}
gotoxy(1,25);clreol;
write(‘Pulsa cualquier tecla para salir’);
textcolor(15); {blanco}
repeat
Sound(220); { Beep }
Delay(144); { Durante 144 ms }
NoSound; { Y luego silencio }
Delay(30); {por media hora (1800000ms) por 0.00001666.. = 30 ms}
until keypressed;
encontrada:=true;

end
else
write(‘ son diferentes’);

delay(ubicador2);
if (keypressed) and (encontrada=false) then
begin
queteclafue:=readkey;
if queteclafue in[‘n’,’N’,’s’,’S’] then
confirma:=’ ‘;
Repeat
gotoxy(1,25);clreol;write(chr(168));
write(‘Confirmas que quieres salir? s/n, s: salir, n: no salir y continuar busqueda’);
confirma:=readkey;
until (confirma=’S’) or (confirma=’s’) or (confirma=’n’) or (confirma=’N’);
if (confirma=’s’) or (confirma=’S’) then
tpress:=TRUE
else {se presiono n o N}
begin
tpress:=FALSE;
textcolor(15+128); {blanco e intermitente}
gotoxy(1,25);clreol;
write(‘Espera el resultado o pulsa cualquier tecla para pausar la busqueda y salir’);
end;
end;

Until (Intento=ubicador) or (encontrada=true) or (tpress=true);

if(encontrada=false) then
begin
gotoxy(21,20);
textcolor(lightred+128);
write(lp,’ No coincidio con ninguna de las ‘,intento, ‘ palabras’);
textcolor(15+128); {blanco e intermitente}
gotoxy(1,25);clreol;
write(‘Pulsa cualquier tecla para salir’);
textcolor(15); {blanco}
repeat
Sound(333);
Delay(66);
NoSound;
Delay(99);
Sound(99);
Delay(33);
NoSound;
Delay(92);
until keypressed;
end;
readkey;
end;

END;

Procedure ejecutaopc1;
Begin
teclan:=’ ‘;
rep:=false;

tipo:=’ ‘;
TextBackground(black);
Textcolor(cyan);

Repeat
colin:=0;
cint1:=0;
cint2:=0;
shewillfindme:=0;
yy:=0;
zz:=0;

Clrscr;
if (teclan=’C’) or (teclan=’c’) then
begin
filai:=incref+1;
end
else
begin
clrscr;
Repeat
writeln(‘Elige # de la lista:’);
writeln(‘[1] – Varios idiomas: 513(v) y 956(p)’);
writeln(‘[2] – Ingles: 60(v) y 140(p)’);
nrolista:=0;
teclal:=readkey;
if teclal=’1′ then
nrolista:=1;
if teclal=’2′ then
nrolista:=2;
Until (nrolista in[1..2]);

if nrolista=1 then
lista:=’Ref. Multi idiomas’
else
lista:=’Ref. Only English’;
Repeat
write(‘Posts por serie (max9):’);readln(maxp);
Until (maxp>=0) and (maxp<10);
Repeat
write(‘Videos por serie (max 5):’);readln(maxv);
Until (maxv>=0) and (maxv<6);
teserie:=maxp+maxv;
if teserie<9 then
lvxp:=24
else
lvxp:=12;
write(‘Serie empieza en :’);
readln(filai);
repeat
write(‘Registros por pantalla (1..’,lvxp:2,’) :’);
readln(fxp);
until (fxp>0) and (fxp<=lvxp);
if detm2(filai) then
textcolor(lightblue)
else
textcolor(lightred);
case (teserie) of
1..7 : maxbloques:=2*fxp;
8..14: if fxp*2<=24 then
maxbloques:=2*fxp
else
maxbloques:=24;
end;
write(‘Se mostraran ‘, (maxbloques/2):4:2,’ registros a partir de ‘, filai,’, pulsa tecla para continuar’);
readkey;
Clrscr;
incref:=filai;
end;
For cint1:=1 to maxbloques do
begin
colin:=colin+1;
if (colin>2) and (colin<5) then
begin
if yy=0 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
if yy=2 then
begin
repeat
elcolort:=random(8)+1;
until colorquemegusta(elcolort)=true;
yy:=0;
end;
textcolor(elcolort);
if colin=4 then
colin:=0;
yy:=yy+1;
end
else
begin
if zz=0 then
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)
else
if zz=2 then
begin
repeat
elcolort:=random(7)+9; {8}
until colorquemegusta(elcolort);
zz:=0;
end;
textcolor(elcolort);
zz:=zz+1;
end;
cint2:=cint2+1;
if cint2=1 then
begin
if nrolista=1 then
ai20me:=956
else
ai20me:=140;
tipo:=’p’;
shewillfindme:=maxp;
end
else
begin
if nrolista=1 then
ai20me:=513
else
ai20me:=60;
tipo:=’v’;
shewillfindme:=maxv;
end;
{inicializo matriz}
For gabrielswork := 1 to shewillfindme do
datos[gabrielswork]:=0;
{me aseguro de que no se generen numeros repetidos
para llenar la matriz}
For gabrielswork := 1 to shewillfindme do
begin
gen:=Random(ai20me)+1;
if gabrielswork>1 then
begin
rep:=false;
for x1:=1 to gabrielswork do
Begin
if datos[x1]=gen then
Begin
gabrielswork:=gabrielswork-1;
x1:=gabrielswork;
rep:=true;
end;
End;
if rep=false then
datos[gabrielswork]:=gen;
End
else
datos[gabrielswork]:=gen;
end;
{aqui ordeno la lista}

for x1:=shewillfindme downto 2 do
for x2:=1 to x1-1 do
if datos[x2]>datos[x2+1] then
begin
ntiendme:=datos[x2+1];
datos[x2+1]:=datos[x2];
datos[x2]:=ntiendme;
end;
{muestro la lista ordenada con su respectiva leyenda}
if tipo=’p’ then
begin
textcolor(elcolort+128);
write(‘Serie ‘,incref:4);
textcolor(elcolort);
incref:=incref+1;
end;
for x1:=1 to shewillfindme do
write(datos[x1]:4,’ (‘,tipo,’) ‘);
if (cint2=2) then
begin
writeln;
cint2:=0;
end;
end;
write(lista,chr(179),’Pulse N para salir, C para continuar, otro para repetir’);
teclan:=Readkey;
until (teclan=’n’) or (teclan=’N’);

End;

procedure menuhorizontal(fila: longint; var lacombinacion:longint);
var
opcionesdelmenu: array[1..7] of string;
recorrido: longint;
quetecla:char;
seeligioalgo:boolean;
begin
seeligioalgo:=false;
opcionesdelmenu[1]:=’p2p2p1′;
opcionesdelmenu[2]:=’p2p1p2′;
opcionesdelmenu[3]:=’p1p2p2′;
opcionesdelmenu[4]:=’p1p1p2p1′;
opcionesdelmenu[5]:=’p1p2p1p1′;
opcionesdelmenu[6]:=’p5′;
opcionesdelmenu[7]:=’Todas’;
lacombinacion:=1;

Repeat
gotoxy(1,fila);
textbackground(black);
textcolor(white);
clreol;
write(‘Elige, usa ‘,chr(26),’/’,chr(27),’ & enter ‘);
for recorrido:=1 to 7 do
begin
if recorrido=lacombinacion then
begin
textbackground(green);
textcolor(black)
end
else
begin
textbackground(black);
textcolor(lightgreen);
end;
write(opcionesdelmenu[recorrido]);
if recorrido<7 then
begin
textcolor(green);
write(chr(179));
end;
end;
repeat
quetecla:=readkey;
if quetecla=#13 then
seeligioalgo:=true;
if quetecla=#0 then
quetecla:=readkey;
{#72 arriba, #80 abajo, #75 izquierda, #77 derecha}
case quetecla of
#75: if lacombinacion=1 then
lacombinacion:=7
else
lacombinacion:=lacombinacion-1;
#77: if lacombinacion=7 then
lacombinacion:=1
else
lacombinacion:=lacombinacion+1;
end;
until (quetecla in [#75,#77]) or (seeligioalgo=true);
until (seeligioalgo=true);
textbackground(black);
textcolor(cyan);
end;

{INICIO DEL PROGRAMA
PASCAL TIENE LA LIMITACION DE QUE EL PROGRAMA PRINCIPAL
NO PUEDE SER MUY LARGO EN CODIFICACION, A SABER HASTA 24K,
POR ESO HE ESTABLECIDO RUTINAS PARA CADA OPCION DEL MENU
PRINCIPAL
}

Begin
Randomize;
Repeat
ocentrado:=false;
tecla:=’ ‘;
menudeopciones(lomenu,1);
case lomenu of
1: ejecutaopc1;{numeros aleatorios}
2: ejecutaopc2;{palabras aleatorias}
33: ejecutaopc3;{buscar palabra}
end;
until (lomenu=3);
End.

Notas sobre el código:

Eso fue para que aprendas a respetarme, bestia concha tu madre!

Word composition p(1)+p(2)+p(1)+p(1) words: ZENXE, DXAUL (#s1,2). // Composición de palabras p(1)+p(2)+p(1)+p(1) palabras: ZENXE, DXAUL (#s1,2).

Word composition p(1)+p(2)+p(1)+p(1) words: ZENXE, DXAUL (#s1,2). // Composición de palabras p(1)+p(2)+p(1)+p(1) palabras: ZENXE, DXAUL (#s1,2).

ZENXE and DXAUL are the words I found on the screen after running the program of which I wrote in this post.

The composition method I chosed to form the random words is p1p2p1p1, it is a formation type of which I talked on my video. // ZENXE y DXAUL son las palabras que encontré en la pantalla después de ejecutar el programa del que escribí en esta publicación. El método de composición que elegí para formar las palabras aleatorias es p1p2p1p1, es un tipo de formación del que hablé en mi video.

The purpose is to form a message with each word which is generated by the program. // El propósito es formar un mensaje con cada palabra que sea generada por el programa.

I have this purpose because as you can see from the print screen above the statistics show very scarce visits per day to this blog, and this is a wise way to increase those numbers. Tengo este propósito porque, como puede ver en la pantalla de impresión de arriba, las estadísticas muestran muy pocas visitas por día a este blog, y esta es una forma sabia de aumentar esos números.

My posts and videos deserve that people who share same goals with me find me and viceversa: those people deserve to find this, but they just need to know about this to be informed, I need to find them and they will be happy to find my done work.

Mis publicaciones y videos merecen que las personas que comparten los mismos objetivos conmigo me encuentren y viceversa: esas personas merecen encontrar esto, pero solo necesitan saber sobre esto para estar informados, necesito encontrarlos y ellos estarán felices de encontrar mi trabajo hecho.

ZENXE

I searched for ZENXE on the Internet and found that it is part of the address of a web page, which is the title of a Facebook page (only the .COM is added), it is a business, I have nothing more to say.

Busqué ZENXE en la Internet y encontré que se trata de parte de la direccion de una  pagina web, que es titulo de una pagina de facebook (solo se le agrega el .COM), se trata de un negocio, no tengo mas que decir.

DXAUL

Regarding this word, nothing relevant to compose with it, I only found that they are user names of profiles on Weibo, Instagtram and Facebook.

Respecto a esta palabra nada relevante que componer con ella, solo encontré que son nombres de usuario de perfiles en Weibo, Instagtram y Facebook.

Yo sé que ella también me encontrará y yo a ella.

I know that she will also find me and I will find her.

But my enemies will be found by their god and they will find their god.

Pero a mis enemigos los encontrará su dios y ellos encontrarán a su dios.

Nota del 26 de Abril de 2022:

En este file esta el código del programa incluso con mas mejoras que cuando hoy horas mas temprano gabré este video donde mejorba ya versión de ayer: https://dontmissit665019001.files.wordpress.com/2022/04/hoy-rei-buscah7l.docx Para ser un buen programador es indispensable poseer un buen nivel de lógica, tener alta capacidad de análisis, ser muy observador y ser creativo. En este video de dos horas te explico como funciona mi programa y como hago unos cambios en el código de mi programa en Turbo Pascal. Nota: Luego de egresar del IDAT (1996-II), Me desempeñé como programador en RPG AS-400 durante unos pocos meses durante 1997, a mis 22 años (Hace 25 años), luego mi vida tomó giros inesperados que me alejaron de la programación profesional. https://ai20.me/acerca-de/ Yo no programaba en Turbo Pascal desde que llevé ese curso en Cibertec (1992, Mi código de estudiante era: CI 9211315) y en Computronic 1993, pero en Mar de e e 2022, hace pocas semanas, encontré un software que me permite programar en Turbo Pasca, desde ese momento comence a hacer algunos programas y luego los programas precursores a este programa.https://ai20.me/2022/03/09/reencontrandome-con-lenguaje-pascal-desde-1993/ He mejorado el programa que subí ayer 25/04/2022 acerca del cual yo hice referencia en este post: https://ai20.me/2022/04/25/regalo-este-codigo-de-programa-y-este-video-a-todos-los-que-han-levantado-falso-testimonio-contra-mi/ Saludos desde Perú. Att. José Carlos Galindo Hinostroza https://dontmissit665019001.files.wordpress.com/2022/04/el-principe-en-computacion.docx

También lo pego aquí:

{ Sistema que genera y busca palabras de hasta 7 letras: BUSCAH7L, esta
Programa basado en el programa que cree y subi el 25 de ABR 2022
a los ficheros de mi blog SHEWILLFIND.ME :
https://aiderspaceship01wp.files.wordpress.com/2022/04/buscah5l.docx
y acerca del cual mencione que le haria correcciones para que genere y pueda encontrar
palabras dentro de una mayor cantidad de probables combinaciones de letras (es decir
palabras), segun la observacion y el parche que le hize a ese programa tal como lo
describo en el archivo que subi a mi otro blog GABRIELS.WORK :
https://dontmissit665019001.files.wordpress.com/2022/04/satanas-es-muy-estupido-para-poder-alguna-vez-entenderme.docx
Hoy extendi el limite maximo de comparaciones a 79 Millones, cuando encuentra la palabra elegida que
fue ingresada por el usuario emite un sonido beep durante 144 milisegundos y muestra un mensaje de encontrado.
Comentario:
(En la palabra ESPANOL mas abajo, considerar el ASCII
que es obtenido con la funcion de pascal CHR(195) en vez N, este editor tiene sus limitaciones
por eso no coloco acentos)
¿QUE POSIBILIDADES HAY DE QUE UNA PALABRA COMO LAS MAS LARGA EN ESPANOL:
electroencefalografista, la cual tiene 23 letras sea generada por algortimos
como los que uso el cual no husca entre palabras de diccionario?.
No es armonioso con la objetividad que tengo para el programa que este incluya procesos
para palabras largas que son las que ,menos hay de estas mientras mas largas son,
y a mayor es el tamano de la palabra mas dificil que sea encontrada, lo cual demoraria
mi prioridad: que mas gente se entere de la estafa religiosa global que yo denuncio
en mis blogs AI20.ME , GABRIELS.WORK y SHEWILLFIND.ME (mi tridente, mi arma contra los
calumniadores:

).

Notas mas importantes: la funcion principal del programa generar palabras aleatorias,
En las notas en este programa p(1) significa generar una letra al azar, sea vocal o consonante,
p(2) significa generar dos letras juntas, la primera puede ser vocal o consonante segun
el azar, la segunda letra es consonante si la primera es vocal o vocal si
la primera es cononante, p(x) significa generar palabra de x numero de
letras intercalando vocal consonante,
si empieza en consonante o vocal se decide al azar.
Se combinan estos procesos azar para generar
palabras de tres hasta 5 letras inclusive.
(El programa tiene la estructura base para generar palabras de mas letras,
hasta nueve incluso, pero las funcionalidades
para palabras de mas de 5 letras no han sido corregidas,
asi que el numero de palabras que pueden generarse con mucho mas limitado,
palabras como PLAYED no podran jamas encontrarse o generase asi
como esta actualmente el algoritmo
respectivo para palabras de 6 letras por ejemplo,
antes de efectuar las implementaciones a la formacion de palabras de 5 letras,
palabras como STUDY eran imposibles de generar o encontar por el sistema,
pero con los cambios que he hecho ahora ya lo es,
es posible gracias a que es probable de que el programa eliga el modo
de formacion con esta secuencia :
p(1)+(p2)+p(1)+p(1),
(las p y sus numeros entre parentesis tienen un significado ya explicado en mi
documento en Word:
https://dontmissit665019001.files.wordpress.com/2022/04/satanas-es-muy-estupido-para-poder-alguna-vez-entenderme.docx )
si hago lo propio para palabras de 6 o mas letras en este sistema,
yo lo anunciare ya sea en un video o en post a medida de que yo corriga
tambien el modo como se generan palabras de mas de cinco letras en mi sistema,
ya sea si es que lo hago yo solo o con la ayuda de algun otro programador,
aunque yo no se si lo hare o cuando lo hare, quizas yo este en otras
prioridades, pero con este proceso de generacion de palabras ya explicado,
y con codigo fuente lineas abajo, yo les dejo la opcion de continuar por mi
en estos cambios a otros programadores con objetivos aliados a los mios,
por cual de implementar ellos estos cambios yo se que no me cobraran nada ni me pondran
condiciones para yo usarlos al compartir el codigo conmigo a mi e-mail: c22cd@hotmail.com
Mas notas sobre el programa en:
https://midioslogico.blogspot.com/2022/04/la-justicia-es-incompatible-con-la.html

Y datos acerca de mi: en https://ai20.me/acerca-de/
Att. Jose Galindo – Abril 24, 2022, Lima – Peru.
Y no, no no no, el monstruo en computacion no soy yo:
https://dontmissit665019001.files.wordpress.com/2022/04/el-monstruo-en-computacion-de-idat.docx
Yo soy el principe en computacion:
https://dontmissit665019001.files.wordpress.com/2022/04/el-principe-en-computacion.docx
}
Program BUSCADORDEPALABRAS;
Uses Crt;
Var
teserie, maxbloques, maxp, maxv, colin, incref, filai, cint1, cint2, x1, x2, gen : Longint;
x3, x4,x5,x6,xx5,xx6, yy,zz,elcolort, ntiendme, gabrielswork, ai20me, shewillfindme,s4c,s5c,s6c : Longint;
nrolista,lvxp, fxp,cuni, s7c,xx7,s8c,xx8,s9c,xx9: Longint;
rep,repu : boolean;
datos: array[1..42] of Longint;
queteclafue,tipo, tecla, tecla3, teclan,teclal, confirma : Char;
esvocal,ocentrado, encontrada,tpress: boolean;
laletra2,laletra, subme: char;
ubicador,ubicador2, genx, xcen, lomenu, lomenu2: Longint;
vocales: array[1..5] of char;
opcionesdelmenu: array[1..13] of string;
encolores,inai,intento, iint,iint2:longint;
palabrasl7: array[1..7] of string;
consonantes: array[1..22] of char;
cosu: array[1..102,1..2] of string;
sesu: array[1..21] of string;
lista,lp,lpg:string;
llp:char;
cs,vs: longint; {cs= controlador de secuencia, vs= valor secuencia, una idea para
reducir codificacion del programa cuando combino silabas}
xlp,tlp:byte;
combinacion, modo3letras,m2l,m3l,m4l,proenglishm3l,proenglishm5l,m5l,m6l,m7l,m8l,m9l,cc,cv,i, serieunica:Longint;
proenglishm6l,proenglishm7l: Longint;
procedure sugiereformaciones(tpalabrai: longint;palabrai: string); forward;

procedure menuhorizontal(fila,combisilabas: longint; var lacombinacion:longint);forward;

function detvocal(leva :char): boolean;
var ff:byte;
hallado: boolean;
begin
hallado:=false;
for ff:=1 to 5 do
if vocales[ff]=leva then
begin
hallado:=true;
detvocal:=true;
ff:=5;
end;

if hallado=false then
for ff:=1 to 22 do
if consonantes[ff]=leva then
begin
hallado:=true;
detvocal:=false;
ff:=22;
end;
end;

function detm2(a :Longint): boolean;
begin
if a mod 2 = 0 then
detm2:=true
else
detm2:=false;
end;

procedure cuadrolineas(tipl: char; coi,fii,cof, fif: byte);
var
itc: byte;
horizontal,vertical, supizq,supder,infizq,infder:char;
begin
if tipl=’s’ then
begin
horizontal:=chr(196);vertical:=chr(179); supizq:=chr(218);supder:=chr(191);infizq:=chr(212);infder:=chr(217);
end
else
begin
horizontal:=chr(205);vertical:=chr(186); supizq:=chr(201);supder:=chr(187);infizq:=chr(200);infder:=chr(188);
end;
gotoxy(coi,fii);
write(supizq);
for itc:=1 to ((cof-coi)-1) do
write(horizontal);
write(supder);
gotoxy(coi,fif);
write(infizq);
for itc:=1 to ((cof-coi)-1) do
write(horizontal);
write(infder);
for itc:=1 to ((fif-fii)-1) do
begin
gotoxy(coi,fii+itc);write(vertical);
gotoxy(cof,fii+itc);write(vertical);
end;
end;

procedure asignalimites(opcp : Longint);
begin
if opcp=1 then
begin
cuni:=37;
ai20me:=0;
gabrielswork:=0;
s4c:=0;
s5c:=0;
s6c:=0;
s7c:=0;
s8c:=0;
s9c:=0;
end
else
if opcp=2 then
begin
cuni:=0;
ai20me:=24;
gabrielswork:=0;
s4c:=0;
s5c:=0;
s6c:=0;
s7c:=0;
s8c:=0;
s9c:=0;
end
else
if opcp=3 then
begin
cuni:=0;
ai20me:=0;
gabrielswork:=18;
s4c:=0;
s5c:=0;
s6c:=0;
s7c:=0;
s8c:=0;
s9c:=0;
end
else
if opcp=4 then
begin
cuni:=0;
ai20me:=0;
gabrielswork:=0;
s4c:=14;
s5c:=0;
s6c:=0;
s7c:=0;
s8c:=0;
s9c:=0;
end
else
if opcp=5 then
begin
cuni:=0;
ai20me:=0;
gabrielswork:=0;
s4c:=0;
s5c:=12;
s6c:=0;
s7c:=0;
s8c:=0;
s9c:=0;
end
else
if opcp=6 then
begin
cuni:=0;
ai20me:=0;
gabrielswork:=0;
s4c:=0;
s5c:=0;
s6c:=10;
s7c:=0;
s8c:=0;
s9c:=0;
end
else
if opcp=7 then
begin
cuni:=0;
ai20me:=0;
gabrielswork:=0;
s4c:=0;
s5c:=0;
s6c:=0;
s7c:=9;
s8c:=0;
s9c:=0;
end
else
if opcp=8 then
begin
cuni:=0;
ai20me:=0;
gabrielswork:=0;
s4c:=0;
s5c:=0;
s6c:=0;
s7c:=0;
s8c:=8;
s9c:=0;
end
else
if opcp=9 then
begin
cuni:=0;
ai20me:=0;
gabrielswork:=0;
s4c:=0;
s5c:=0;
s6c:=0;
s7c:=0;
s8c:=0;
s9c:=7;
end;
end;

procedure generaletra(ev :boolean; var ll:char); forward;

procedure imprimesilaba(cgen, nds : Longint);
begin
if cgen=1 then
for x5:=1 to nds do
begin
esvocal:=detm2(x5);
generaletra(esvocal, laletra);
write(laletra);
end
else
for x5:=1 to nds do
begin
esvocal:=not(detm2(x5));
generaletra(esvocal, laletra);
write(laletra);
end;
end;

procedure imprimesilabayc(cgen, nds : Longint;var silaco: string; visu:longint);
var silacoaux: string;
begin
silacoaux:=silaco;
if cgen=1 then
for x5:=1 to nds do
begin
esvocal:=detm2(x5); {empieza en consonante, cuando x5 es 1, es impar, detm2 es false,
y esvocal toma el valor de false, y al no ser vocal generara una consonante}
generaletra(esvocal, laletra2);
if visu=1 then
write(laletra2);
silaco:=silaco+laletra2;
end
else
for x5:=1 to nds do
begin
esvocal:=not(detm2(x5)); {empieza en vocal, cuando x5 es 1, es impar, detm2 es false, pero al negarlo,
lo hago true, y esvocal toma el valor de true, y al ser vocal generara una vocal}
generaletra(esvocal, laletra2);
if visu=1 then
write(laletra2);
silaco:=silaco+laletra2;
end;
end;

procedure generaletra(ev :boolean; var ll:char);
var genl:longint;
begin
cv:=0;
cc:=0;
if ev=true then
begin
{genero una vocal al azar
ejem: ll:=’A’}
genl:=Random(5)+1;
ll:=vocales[genl];
end
else
begin
{genero una consonante al azar
ejem: ll:=’B’}
genl:=Random(22)+1;
ll:=consonantes[genl];
end;
end;

procedure menudeopciones(var lo:Longint; nm: Longint);
var t:char;
begin
case nm of
1 :begin
textbackground(BLUE);clrscr;
textcolor(YELLOW);
cuadrolineas(‘d’,13,6,72,13);
gotoxy(14,7); write(‘Menu de opciones BUSCAH7L’);
gotoxy(14,8); write(‘================’);
gotoxy(14,9); write(‘[1] Generador de numeros’);
gotoxy(14,10);write(‘[2] Generador de letras’);
gotoxy(14,11);write(‘[3] La Palabra y el resultado – de 2 hasta 7 letras [2..7]’);
gotoxy(14,12);write(‘[ESC] Salir’);
textbackground(black);
textcolor(white);
Repeat
t:=readkey;
until (t=’1′) or (t=’2′) or (t=’3′) or (t=#27);

case t of
‘1’: lo:=1;
‘2’: lo:=2;
‘3’: lo:=33;
‘4’: lo:=4;
#27: lo:=3;
end;
end;
2 :begin
textcolor(yellow);clrscr;
cuadrolineas(‘d’,13,11,76,23);
gotoxy(14,12); write(‘Elegir combinacion, palabras o silabas de /X/ letras (N) veces’);
gotoxy(14,13); write(‘[1] : /1/(37)’);
gotoxy(14,14); write(‘[2] : /2/(24)’);
gotoxy(14,15); write(‘[3] : /3/(18)’);
gotoxy(14,16); write(‘[4] : /4/(14)’);
gotoxy(14,17);write(‘[5] : /5/(12)’);
gotoxy(14,18);write(‘[6] : /6/(10)’);
gotoxy(14,19);write(‘[7] : /7/(9)’);
gotoxy(14,20);write(‘[8] : /8/(8)’);
gotoxy(14,21);write(‘[9] : /9/(7)’);
gotoxy(14,22);write(‘[0] : Centrado /2/(1) + /5/(1)’);

Repeat
t:=readkey;
until (t=’1′) or (t=’2′) or (t=’3′) or (t=’4′) or (t=’5′) or (t=’6′) or (t=’7′) or (t=’8′) or (t=’9′) or (t=’0′);
case t of
‘1’: lo:=1;
‘2’: lo:=2;
‘3’: lo:=3;
‘4’: lo:=4;
‘5’: lo:=5;
‘6’: lo:=6;
‘7’: lo:=7;
‘8’: lo:=8;
‘9’: lo:=9;
‘0’: lo:=0;
end;
end;
end;

end;

function colorquemegusta(a :Longint): boolean;
{Descarto los colores que no me agradan, en este
caso los mas faciles para la vista considerando
fondo de pantalla negro, los codigos de colores en Turbo Pascal
son:
Black = 0, Blue = 1, Green = 2, Cyan = 3,
Red = 4, Magenta = 5, Brown = 6, LightGray = 7,
DarkGray = 8, LightBlue = 9, LightGreen = 10, LightCyan = 11,
LightRed = 12, LightMagenta= 13, Yellow = 14, White = 15
}
begin
case a of
1,4,5,6,8,13: colorquemegusta:=false;
else
colorquemegusta:=true;
end;
end;

procedure inicialetras;
begin
cc:=0;
cv:=0;
{guardo en las matrices de vocales y consonantes mayusculas, las vocales y las consonantes}
for i:=65 to 90 do
case i of
65, 69, 73, 79, 85: begin
cv:=cv+1;
vocales[cv]:=chr(i);
end;
else
begin
cc:=cc+1;
consonantes[cc]:=chr(i);
end;
end;
consonantes[22]:=chr(165);

end;

procedure ejecutaopc2;

BEGIN

tecla:=’ ‘;
Repeat
clrscr;
if (tecla=’C’) or (tecla=’c’) then
begin
filai:=shewillfindme;
end
else
begin
textcolor(white);
writeln(‘Pulse tecla «1» para palabras de diversas longitudes’);
write(‘pulse «2» para palabras de una sola longitud:’);
Repeat
subme:=readkey;
until (subme=’1′) or (subme=’2′);
writeln;
write(‘Serie empieza en :’);readln(shewillfindme);
if subme=’1′ then
begin
Repeat
write(‘Cantidad de silabas de 1 letra a mostrar por serie (0..2):’);
readln(cuni);
Until (cuni>=0) and (cuni<3);
Repeat
write(‘Cantidad de silabas de 2 letras a mostrar por serie (0..2):’);
readln(ai20me);
Until (ai20me>=0) and (ai20me<3);
Repeat
write(‘Cantidad de silabas de 3 letras a mostrar por serie:(0..2)’);
readln(gabrielswork);
Until (gabrielswork>=0) and (gabrielswork<3);
Repeat
write(‘Cantidad de silabas de 4 letras a mostrar por serie:(0..2)’);
readln(s4c);
Until (s4c>=0) and (s4c<3);
Repeat
write(‘Cantidad de palabras de 5 letras a mostrar por serie:(0..1)’);
readln(s5c);
Until (s5c>=0) and (s5c<2);
Repeat
write(‘Cantidad de palabras de 6 letras a mostrar por serie:(0..1)’);
readln(s6c);
Until (s6c>=0) and (s6c<2);
Repeat
write(‘Cantidad de palabras de 7 letras a mostrar por serie:(0..1)’);
readln(s7c);
Until (s7c>=0) and (s7c<2);
Repeat
write(‘Cantidad de palabras de 8 letras a mostrar por serie:(0..1)’);
readln(s8c);
Until (s8c>=0) and (s8c<2);
Repeat
write(‘Cantidad de palabras de 9 letras a mostrar por serie:(0..1)’);
readln(s9c);
Until (s9c>=0) and (s9c<2);
clrscr;
end
else
begin
menudeopciones(lomenu2,2);
if lomenu2=0 then
ocentrado:=true
else
asignalimites(lomenu2);
clrscr;
end;
inicialetras;

{en el procedimiento, true es vocal, false es consonante, el como empieza la silaba
se determina al azar}
end;

if ocentrado=true then
begin
repu:=false;
textbackground(blue);
clrscr;
Repeat
textcolor(white);
if repu=false then
begin
gotoxy(25,11);
serieunica:=shewillfindme;
clreol;
write(‘Serie inicial:’,serieunica:4);
repu:=true;
end;
gotoxy(25,12);
clreol;write(‘Serie #’,serieunica:4);
cuadrolineas(‘s’,24,13,50,16);
gotoxy(25,14);
{1 silaba de 2 letras}
for xcen:=1 to 1 do
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
End;

{1 PALABRA de 5 letras}
{procedimiento especial (es posible 2 vocales o dos consonantes juntas)}
for xcen:=1 to 1 do
begin

cint2:=random(2)+1;
if cint2=1 then
{procedimiento standar}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,5);
end
else
begin
{procedimiento especial (es posible 3 vocales o 3 consonantes juntas)}

{Aqui con la variable: proenglishm5l y un artiluguo con ella,
yo estoy aumentando la probabilidad de que mi algoritmo genere palabras
de 5 letras que puedan coincidir con el ingles, Aleman u otro idioma
donde dos o mas consonantes o vocales juntas son mas frecuentes a partir
de cualquier posición de la palabra, son palabras tales como:
THINK ((p(1)+p(1)+p(2)+p(1)) o HALLO (p(1)+p(2)+p(1)+p(1)),
es decir que forme palabras en las combinaciones arriba cuando
valores de m5l (maximo 5 letras) de son 4 o 5 respecticamente}
proenglishm5l:=random(2); {se genera un valor al azar del 0 a 1}
if proenglishm5l=0 then
m5l:=random(5)+1 {aqui sigo el proceso que ya tenia antes de este cambio}
else {si no es cero entonces es 1}
m5l:=random(2)+4;{genero un valor aleatorio del 0 al 1, al cual le sumo
4, de esa forma el valor de m5l solo podria fluctuar entre
4 y 5, lo cual haria que el programa use las combinaciones
de formacion que tienen mas opciones de
formar palabras diferentes a las latinas}

{al azar deja abierta la posiblidad de palabras como BITE, BYTE,THUS,USAR;
composiciones (valor de m5l 1,2,3,4 y 5 respectivamente) :
p(2)+p(1)+p(2) <- (a usar cuando m5l sea 1),
p(1)+p(2)+p(2)<- (a usar cuando m5l sea 2),
p(2)+p(2)+p(1)<- (a usar cuando m5l sea 3),
p(1)+p(1)+p(2)+p(1) <- (a usar cuando m5l sea 4),
p(1)+p(2)+p(1)+p(1) <- (a usar cuando m5l sea 5)}

case m5l of
1: {p(2)+p(1)+p(2)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
end; {end p(2)+p(1)+p(2)}
2: {p(1)+p(2)+p(2)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
end; {end p(2)+p(1)+p(2)}
3: {p(2)+p(2)+p(1)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
end; {end p(2)+p(2)+p(1)}
4: {p(1)+p(1)+p(2)+p(1)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
end; {end p(1)+p(1)+p(2)+p(1)}
5: {p(1)+p(2)+p(1)+p(1)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
end; {end p(1)+p(2)+p(1)+p(1)}

end; {case m5l}
end; {del IF}

end;
serieunica:=serieunica+1;
gotoxy( 25,17); textcolor(cyan);
write(‘ESC =Salir, C =Siguiente’);
tecla3:=Readkey;
Until (tecla3=#27);
textbackground(black);
ocentrado:=false;

END
else
for zz:=1 to 24 do
begin
write(shewillfindme:4);
shewillfindme:=shewillfindme+1;

{silabas de 1 letra}
for x1:=1 to cuni do
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);

End;
{silabas de 2 letras}
for x1:=1 to ai20me do
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);

End;
{silabas de 3 letras}

for x6:=1 to gabrielswork do
begin
cint2:=random(2)+1;
if cint2=1 then
{procedimiento standar}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,3);
end
else
{procedimiento especial (es posible 2 vocales o dos consonantes juntas)}
begin
modo3letras:=random(3)+1;
{al azar deja abierta la posiblidad de palabras como BYE (1+2),y no solo como ICH (2 y 1)}
CASE modo3letras of
1: begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);
end;
2: begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
end;
3: begin {dejando abierta para palabras como WWW o UAU}
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);
end;
END; {CASE}
end;
end;
{palabras o silabas de 4 caracteres}

for x4:=1 to s4c do
begin
cint2:=random(2)+1;
if cint2=1 then
{procedimiento standar}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,4);
end
else
{procedimiento especial (es posible 3 vocales o 3 consonantes juntas)}
begin
m4l:=random(4)+1;
{al azar deja abierta la posiblidad de palabras como BITE, BYTE,THUS,USAR;
composiciones (valor de m4l 1,2,3 y 4 respectivamente) :
p(2)+p(2),
p(2)+p(1)+p(1),
p(1)+p(2)+p(1),
p(1)+p(1)+p(2)}

case m4l of
1: {p(2)+p(2)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
end; {end p(2)+p(2)}
2: {p(2)+p(1)+p(1)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
end; {end p(2)+p(1)+p(1)}
3: {p(1)+p(2)+p(1)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
end; {end p(1)+p(2)+p(1)}
4: {p(1)+p(1)+p(2)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
end; {end p(1)+p(1)+p(2)}

end; {case m4l}
end; {del IF}
end; {for para palabras de 4 letras}

{palabras de 5 caracteres}

for xx5:=1 to s5c do
begin
cint2:=random(2)+1;
if cint2=1 then
{procedimiento standar}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,5);
end
else
begin
{procedimiento especial (es posible 3 vocales o 3 consonantes juntas)}
m5l:=random(7)+1; {en la version anterior esto estaba: random(5)+1, 5 posibilidades,
una posibilidad para cada combinacion para formar la palabra,
pero ahora le incremente 2 y llego a 7 porque
le dare el doble de posibilidades a los valores 4 y 5 para m51,
ya que esas opciones de formacion de palabras
mas amigables con el Ingles o el Aleman por ejm. y sea mas facil encontrar
o generar palabras como HALLO o THINK}
{al azar deja abierta la posiblidad de palabras como BITE, BYTE,THUS,USAR;
composiciones (valor de m5l 1,2,3,4..5 y 6..7 respectivamente) :
p(2)+p(1)+p(2),
p(1)+p(2)+p(2),
p(2)+p(2)+p(1),
p(1)+p(1)+p(2)+p(1),
p(1)+p(1)+p(2)+p(1),
p(1)+p(2)+p(1)+p(1),
p(1)+p(2)+p(1)+0p(1),}

case m5l of
1: {p(2)+p(1)+p(2)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
end; {end p(2)+p(1)+p(2)}
2: {p(1)+p(2)+p(2)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
end; {end p(2)+p(1)+p(2)}
3: {p(2)+p(2)+p(1)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
end; {end p(2)+p(2)+p(1)}
4..5: {p(1)+p(1)+p(2)+p(1)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
end; {end p(1)+p(1)+p(2)+p(1)}
6..7: {p(1)+p(2)+p(1)+p(1)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);{p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);{p(1)}
end; {end p(1)+p(2)+p(1)+p(1)}

end; {case m5l}
end; {del IF}
end; {for para palabras de 5 letras}
{palabras de 6 caracteres}

for xx6:=1 to s6c do
begin
cint2:=random(2)+1;
if cint2=1 then
{procedimiento standar}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,6);
end
else
{procedimiento especial (es posible 2 vocales o dos consonantes juntas)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
end;
end;

{palabras de 7 caracteres}

for xx7:=1 to s7c do
begin
cint2:=random(2)+1;
if cint2=1 then
{procedimiento standar}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,7);
end
else
{procedimiento especial (es posible 2 vocales o dos consonantes juntas)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);
end;
end;

{palabras de 8 caracteres}

for xx8:=1 to s8c do
begin
cint2:=random(2)+1;
if cint2=1 then
{procedimiento standar}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,8);
end
else
{procedimiento especial (es posible 2 vocales o dos consonantes juntas)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
end;
end;

{palabras de 9 caracteres}

for xx9:=1 to s9c do
begin
cint2:=random(2)+1;
if cint2=1 then
{procedimiento standar}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,9);
end
else
{procedimiento especial (es posible 2 vocales o dos consonantes juntas)}
begin
gen:=random(2)+1;
write(‘ ‘);
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,1);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilaba(gen,2);
end;
end;

writeln;
end;
if (tecla3=#27) then
begin
tecla3:=’ ‘;
tecla:=’n’;
end
else
begin
write(‘Pulse N o n para salir, C o c para continuar, otro para repetir’);
tecla:=Readkey;
end;
until (tecla=’n’) or (tecla=’N’);
End;

procedure ejecutaopc3;
BEGIN
CLRSCR;
inicialetras;
TEXTCOLOR(CYAN);
tpress:=FALSE;
for tlp:=1 to 7 do
palabrasl7[tlp]:=»;
WRITEln(‘Ingresa palabra de 2 a 7 letras mayusculas con no mas de 3 vocales’);
writeln(‘o 3 consonantes juntas, de haberlas jamas habra coincidencia, ‘);
write(‘este programa no genera palabras asi; la palabra es:’);
lp:=»;
tlp:=0;
Repeat
Repeat
llp:=readkey;
until (((ord(llp)>=65) and (ord(llp)<=90)) or (ord(llp)=165)) or (llp=#13);
if llp<>#13 then
begin
write(llp);
lp:=lp+llp;
tlp:=tlp+1;
end;
until (llp=#13) or (tlp=7);
case tlp of
2:
begin
textcolor(white);
writeln(‘ ‘,chr(179),’ Leyenda:p(1)= 1 letra vocal o consonante, p(x)= x letras y empiezan en vocal o consonante,’);
writeln(‘si fue vocal le sigue una consonante y viceversa.’);
gotoxy(1,22);sugiereformaciones(tlp,lp);
menuhorizontal(6,2, combinacion);
textcolor(cyan);
end;
3:
begin
textcolor(white);
write(‘ ‘,chr(179),’ Leyenda:p(1)=1 letra vocal o consonante, p(x)= x letras y empiezan en vocal o consonante,’);
writeln(‘ si fue vocal le sigue una consonante y viceversa.’);
gotoxy(1,22);sugiereformaciones(tlp,lp);
menuhorizontal(6,3, combinacion);
textcolor(cyan);
end;
4:
begin
textcolor(white);
write(‘ ‘,chr(179),’ Leyenda:p(1)=1 letra vocal o consonante, p(x)= x letras y empiezan en vocal o consonante,’);
writeln(‘ si fue vocal le sigue una consonante y viceversa.’);
gotoxy(1,22);sugiereformaciones(tlp,lp);
menuhorizontal(6,4, combinacion);
textcolor(cyan);
end;
5:
begin
textcolor(white);
write(‘ ‘,chr(179),’ Leyenda:p(1)=1 letra vocal o consonante, p(x)= x letras y empiezan en vocal o consonante,’);
writeln(‘ si fue vocal le sigue una consonante y viceversa.’);
gotoxy(1,22);sugiereformaciones(tlp,lp);
menuhorizontal(6,5, combinacion);
textcolor(cyan);
end;
6:
begin
textcolor(white);writeln;
write(chr(179),’ Leyenda:p(1)=1 letra vocal o consonante, p(x)= x letras y empiezan en vocal o consonante,’);
writeln(‘si fue vocal le sigue una consonante y viceversa.’);
gotoxy(1,22);sugiereformaciones(tlp,lp);
menuhorizontal(6,6, combinacion);
textcolor(cyan);
gotoxy(1,6);clreol;write(‘Elegiste la opcion: ‘,opcionesdelmenu[combinacion]);
end;
7:
begin
textcolor(white);writeln;
write(chr(179),’ Leyenda:p(1)=1 letra vocal o consonante, p(x)= x letras y empiezan en vocal o consonante,’);
writeln(‘si fue vocal le sigue una consonante y viceversa.’);
gotoxy(1,22);sugiereformaciones(tlp,lp);
menuhorizontal(6,7, combinacion);
textcolor(cyan);
gotoxy(1,6);clreol;write(‘Elegiste la opcion: ‘,opcionesdelmenu[combinacion]);
end;
end;{case tlp}
{he puesto como maximo cinco letras porque con mayores letras
hay demasiadas palabras que nunca saldrian segun procesos no actualizados,
a diferencia de los procesos para palabras de 2 a 5 letras que ya los actualice,
sin embargo en las opciones de listados puedes ver el patron de formacion de
las palabras de 6 a mas letras, veras que dos consonantes juntas al incio no es posible
y eso limita formacion de palabras como STUDIED o PLAYED, puedo corregir, se como
hacerlo, pero mi prioridad no es dedicarme a programar computadoras sino denunciar
la gran estafa religiosa a nivel planetario con evidencias logicas y acallar a aquellas
personas que me han tildado calumniosamente de ser estupido o de ser un loco,
esta es una forma de cerrarles el hocico a esas estupidas personas, a esos calumniadores
quienes por lo mismo que ellos son, sus palabras no tiene coherencia con la verdad porque son calumnias
y las calumnias son palabras dichas por los incoherentes, los locos son ellos,
por eso escribi que la bestia, el calumniador(satanas significa eso) jamas me entendera:

Ezequiel 23:45 «Pero los hombres justos las juzgarán en el juicio de las adúlteras y en el juicio de las mujeres que derraman sangre inocente».


Otros entenderan que un caballo de troya vino de parte de los enemigos de la verdad
en los falsos libros sagrados que ellos han presentado como verdad,
por eso es que uno de mis varios blogs se llama algo asi como: anti caballo de troya,

La flor que no se marchita si la riego todos los días. – El nuevo ordén mundial – Daniel 2:43-44


https://el-anti-caballo-de-troya.blogspot.com/2022/02/sandra-bazan-tu-no-debiste-levantar.html
este mensaje es pues como un antivirus contra tanta mentira religiosa que ha confundido por
mucho tiempo incluso a las mentes humanas mas brillantes como Isacc Newtown,
https://elpais.com/elpais/2007/06/18/actualidad/1182149339_850215.html
Una mano no humana era preciso que intervenga para detener a los conspiradores contra el
pacto santo, como ya lo anticipo una profecia judia:
«Y su poder se fortalecera, mas no con fuerza propia;
y causará grandes ruinas, y prosperara, y actuare arbitrariamente,
y destruira a los fuertes y al pueblo de los santos.
Con su astucia hara prosperar la calumnia en su mano;
y en su corazon se ensorbecera con arrogancia,
y sin previo aviso destruira a muchos;
y se levantara contra el Principe de los principes,

Evidencias y complementos: El Ministerio Público de Perú se limpió el culo con mi denuncia.


pero sera quebrantado, aunque no por mano humana.»

}
writeln;

if tlp<2 then
begin
writeln(‘ La palabra que ingresaste es ‘,lp,’ y tiene ‘,tlp,’ letras’);
writeln(‘No existe procedimiento para palabras de: ‘,tlp:2,’ letra(s), debiste ingresar una de 2 a 7 letras’);
readkey;
end
else
begin
repeat
gotoxy(3,7);clreol;
write(‘# max. de palabras al azar al buscar coincidencia(7..79000000):’);
readln(Ubicador);
until (ubicador>=7) and (ubicador<=790000000);
repeat
gotoxy(3,8);clreol;
write(‘Indica tiempo de la pausa entre numeros en milisegundos (0..3000):’);
readln(Ubicador2);
until (ubicador2>=0) and (ubicador2<=3000);
repeat
gotoxy(3,9);clreol;
write(‘Si deseas fila extra con palabra divida en colores (0 = No, 1 = Si)):’);
readln(encolores);
until (encolores>=0) and (encolores<=1);
encontrada:=false;
Intento:=0;
cuadrolineas(‘s’,2,10,42,18);
textcolor(15+128); {blanco e intermitente}
gotoxy(1,25);write(‘Espera el resultado o pulsa cualquier tecla para pausar la busqueda y salir’);
Repeat
lpg:=»;
Intento:=Intento+1;
gotoxy(32,18);

CASE TLP OF
2: BEGIN

{1 PALABRA de 2 letras
p(1)+p(1): hace posible 2 vocales o dos consonantes juntas,
Referencias: 1: p(2)
2: p(1)+p(1)
}
if combinacion<>3 then
m2l:=combinacion {se eligio una serie especifica: 1 o 2}
else
m2l:=random(2)+1; {se elgio 3, eso es ‘todas’ en el menu,
entonces cualquiera de las 2 combinaciones debe hacerse posible}

case m2l of
1:begin {serie 1: p(2)}
cs:=2;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs es decir 2}

end; {serie 1: p(2)}
2:begin {serie 2: p(1)+p(1)}
for vs:=1 to 2 do {1 porque esta secuencia tiene 1 silabas c/u con cs letras}
begin
case vs of
1..2: cs:=1;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}
end;{serie 2: p(1)+p(1)}
end; {m2l}
END; {del caso en que TLP es 2, tamanio de palabra es 2}

3: BEGIN

{1 PALABRA de 3 letras}
{procedimiento especial (es posible 3 vocales o 3 consonantes juntas
opcionesdelmenu[1]:=’p2p1′;
opcionesdelmenu[2]:=’p1p2′;
opcionesdelmenu[3]:=’p1p1p1′;
opcionesdelmenu[4]:=’p3′;
opcionesdelmenu[5]:=’Todas’;
}
for xcen:=1 to 1 do
begin
if combinacion<>5 then {teniendo en cuenta la eleccion de combinacion el menu horizontal,
10 es la opcion elegida para considerar todas las posibilidades ofrecidas, si no es 10
es porque se eligio una combinación que hay que considerarla para m3l y nos
olvidamos de la combinacion aleatoria}
m3l:=combinacion
else
begin
{Aqui con la variable: proenglishm3l y un artiluguo con ella,
yo estoy aumentando la probabilidad de que mi algoritmo genere palabras
de 3 letras que puedan coincidir con iniciales en ingles populares WWW WTF
(p(1)+p(1)+p(1)),
es decir que forme palabraS en la combinacion arriba cuando
valores de m3l (maximo 3 letras) es 3}
proenglishm3l:=random(2); {se genera un valor al azar del 0 a 1}
if proenglishm3l=0 then
m3l:=random(4)+1 {aqui sigo el proceso regular}
else {si no es cero entonces es 1}
m3l:=3;{fuerzo elegir combinacion con mas posibildades de formar iniciales de frases anglosajonas}

{ Las combinaciones a considerar segun valor de m6l:
p(2)p(1);
p(1)p(2);
p(1)p(1)p(1);
p(3);
}
end;

case m3l of
1: begin {p(2)p(1)}

for vs:=1 to 2 do {2 porque esta secuencia tiene 2 silabas c/u con cs letras}
begin
case vs of
1: cs:=2;
2: cs:=1;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; {p(2)p(1)}

2: begin {p(1)p(2)}

for vs:=1 to 2 do {2 porque esta secuencia tiene 2 silabas c/u con cs letras}
begin
case vs of
1: cs:=1;
2: cs:=2;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; {p(1)p(2)}

3: begin {p(1)p(1)p(1)}

for vs:=1 to 3 do {3 porque esta secuencia tiene 3 silabas c/u con cs letras}
begin
case vs of
1..3: cs:=1;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; {p(1)p(1)p(1)}

4: begin {p(3)}

for vs:=1 to 1 do {1 porque esta secuencia tiene 1 silabas c/u con cs letras}
begin
case vs of
1: cs:=3;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; {p(3)}
end;{case m3l}

end; {for}

END; {palabras 6 letras}
4: BEGIN

{1 PALABRA de 4 letras}

for xcen:=1 to 1 do
begin
if combinacion<>6 then {teniendo en cuenta la eleccion de combinacion el menu horizontal,
6 es la opcion elegida para considerar todas las posibilidades ofrecidas, si no es 6
es porque se eligio una combinación que hay que considerarla para m5l y nos
olvidamos de la combinacion aleatoria}
m4l:=combinacion
else
m4l:=random(5)+1; {al azar deja abierta la posiblidad de palabras como BITE, BYTE,THUS,USAR;
composiciones (valor de m4l 1,2,3,4 y 5 respectivamente) :
p(2)+p(2),
p(2)+p(1)+p(1),
p(1)+p(2)+p(1),
p(1)+p(1)+p(2),
p(4)}

case m4l of
1: {p(2)+p(2)}
begin

gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores); {p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores); {p(2)}
end; {fin de procesos p(2)+p(2)}

2: {p(2)+p(1)+p(1)}
begin

gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores); {p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores); {p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores); {p(1)}
end; {fin de procesos p(2)+p(1)+p(1)}

3: {p(1)+p(2)+p(1)}
begin

gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores); {p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores); {p(2)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores); {p(1)}
end; {fin de procesos p(1)+p(2)+p(1)}
4: {p(1)+p(1)+p(2)}
begin

gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores); {p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores); {p(1)}
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores); {p(2)}
end; {fin de procesos p(1)+p(1)+p(2)}
5: {p(4)}
begin

gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,4,lpg,encolores); {p(4)}

end; {fin de procesos p(4)}

end;{el fin de los procesos programados segun el valor de de m4l}

end;{end del for: nro de palabras generadas de 4 letras (variable xcen),
yo podria omitir este for,
pero es un recordatorio de la idea de generar mas de una palabra en el procedimiento}

END; {end case – 4 letras}
5: BEGIN

{1 PALABRA de 5 letras}
{procedimiento especial (es posible 3 vocales o 3 consonantes juntas)}
for xcen:=1 to 1 do
begin
if combinacion<>7 then {teniendo en cuenta la eleccion de combinacion el menu horizontal,
7 es la opcion elegida para considerar todas las posibilidades ofrecidas, si no es 7
es porque se eligio una combinación que hay que considerarla para m5l y nos
olvidamos de la combinacion aleatoria}
m5l:=combinacion
else
begin
{Aqui con la variable: proenglishm5l y un artiluguo con ella,
yo estoy aumentando la probabilidad de que mi algoritmo genere palabras
de 5 letras que puedan coincidir con el ingles, Aleman u otro idioma
donde dos o mas consonantes o vocales juntas son mas frecuentes a partir
de cualquier posición de la palabra, son palabras tales como:
THINK ((p(1)+p(1)+p(2)+p(1)) o HALLO (p(1)+p(2)+p(1)+p(1)),
es decir que forme palabras en las combinaciones arriba cuando
valores de m5l (maximo 5 letras) de son 4 o 5 respecticamente}
proenglishm5l:=random(2); {se genera un valor al azar del 0 a 1}
if proenglishm5l=0 then
m5l:=random(6)+1 {aqui sigo el proceso que ya tenia antes de este cambio}
else {si no es cero entonces es 1}
m5l:=random(2)+4;{genero un valor aleatorio del 0 al 1, al cual le sumo
4, de esa forma el valor de m5l solo podria fluctuar entre
4 y 5, lo cual haria que el programa use las combinaciones
de formacion que tienen mas opciones de
formar palabras diferentes a las latinas}

{al azar deja abierta la posiblidad de palabras como BITE, BYTE,THUS,USAR;
composiciones (valor de m5l 1,2,3,4,5 y 6 respectivamente) :
p(2)+p(2)+p(1),
p(2)+p(1)+p(2),
p(1)+p(2)+p(2),
p(1)+p(1)+p(2)+p(1),
p(1)+p(2)+p(1)+p(1),
p(5)}
end;

case m5l of
1: begin {p(2)+p(2)+p(1)}

gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores);
end; {p(2)+p(2)+p(1)}

2: begin {p(2)+p(1)+p(2)}

gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
end; {p(2)+p(1)+p(2)}

3: begin {p(1)+p(2)+p(2)}

gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
end; {p(1)+p(2)+p(2)}
4: begin {p(1)+p(1)+p(2)+p(1)}

gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores);
end; {p(1)+p(1)+p(2)+p(1)}

5: begin {p(1)+p(2)+p(1)+p(1)}

gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,1,lpg,encolores);
end; {p(1)+p(2)+p(1)+p(1)}
6: begin {p(5)}

gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,5,lpg,encolores);

end; {p(5)}
end;{case m5l}

end; {for}

END; {palabras 5 letras}

6: BEGIN

{procedimiento especial (es posible 3 vocales o 3 consonantes juntas)
Referencia
opcionesdelmenu[1]:=’p1p2p2p1′;
opcionesdelmenu[2]:=’p1p2p1p2′;
opcionesdelmenu[3]:=’p2p1p1p2′;
opcionesdelmenu[4]:=’p2p1p2p1′;
opcionesdelmenu[5]:=’p1p1p2p2′;
opcionesdelmenu[6]:=’p2p2p1p1′;
opcionesdelmenu[7]:=’p1p1p2p1p1′;
opcionesdelmenu[8]:=’p2p2p2′;
opcionesdelmenu[9]:=’p6′;
opcionesdelmenu[10]:=’Todas’;
}

 

{1 PALABRA de 6 letras}
{procedimiento especial (es posible 3 vocales o 3 consonantes juntas)}
for xcen:=1 to 1 do
begin
if combinacion<>10 then {teniendo en cuenta la eleccion de combinacion el menu horizontal,
10 es la opcion elegida para considerar todas las posibilidades ofrecidas, si no es 10
es porque se eligio una combinación que hay que considerarla para m6l y nos
olvidamos de la combinacion aleatoria}
m6l:=combinacion
else
begin
{Aqui con la variable: proenglishm6l y un artiluguo con ella,
yo estoy aumentando la probabilidad de que mi algoritmo genere palabras
de 6 letras que puedan coincidir con el ingles, Aleman u otro idioma
donde dos o mas consonantes o vocales juntas son mas frecuentes a partir
de cualquier posición de la palabra, son palabras tales como:
THANKS (p(1)+p(1)+p(2)+p(1)+p(1)),
es decir que forme palabras en las combinacion arriba cuando
valores de m6l (maximo 6 letras) es 7}
proenglishm6l:=random(2); {se genera un valor al azar del 0 a 1}
if proenglishm6l=0 then
m6l:=random(9)+1 {aqui sigo el proceso regular}
else {si no es cero entonces es 1}
m6l:=7;{fuerzo elegir combinacion con mas posibildades de formar palabras anglosajonas}

{ Las combinaciones a considerar segun valor de m6l:
p(1)p(2)p(2)p(1);
p(1)p(2)p(1)p(2);
p(2)p(1)p(1)p(2);
p(2)p(1)p(2)p(1);
p(1)p(1)p(2)p(2);
p(2)p(2)p(1)p(1);
p(1)p(1)p(2)p(1)p(1);
p(2)p(2)p(2);
p(6);
}
end;

case m6l of
1: begin {p(1)+p(2)+p(2)+p(1)}
{utilizo la idea que recien se me acaba de ocurrir para reducir,
el tamano de mi codificacion de este programa, compara con el codigo en las opciones para
palabras de 5 letras y veras cuantas lineas ahorro con esto, esto es 6 letras y
yo ya mejore el proceso, asi evoluciono yo en todos mis proyectos}

for vs:=1 to 4 do {4 porque esta secuencia tiene 4 silabas c/u con cs letras}
begin
case vs of
1: cs:=1;
2: cs:=2;
3: cs:=2;
4: cs:=1;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; {p(1)+p(2)+p(2)+p(1)}

2: begin { p(1)p(2)p(1)p(2)}

for vs:=1 to 4 do {4 porque esta secuencia tiene 4 silabas}
begin
case vs of
1: cs:=1;
2: cs:=2;
3: cs:=1;
4: cs:=2;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; { p(1)p(2)p(1)p(2)}

3: begin { p(2)p(1)p(1)p(2)}

for vs:=1 to 4 do {4 porque esta secuencia tiene 4 silabas}
begin
case vs of
1: cs:=2;
2: cs:=1;
3: cs:=1;
4: cs:=2;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; { p(2)p(1)p(1)p(2)}

4: begin { p(2)p(1)p(2)p(1)}

for vs:=1 to 4 do {4 porque esta secuencia tiene 4 silabas}
begin
case vs of
1: cs:=2;
2: cs:=1;
3: cs:=2;
4: cs:=1;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; { p(2)p(1)p(2)p(1)}

5: begin { p(1)p(1)p(2)p(2)}

for vs:=1 to 4 do {4 porque esta secuencia tiene 4 silabas}
begin
case vs of
1: cs:=1;
2: cs:=1;
3: cs:=2;
4: cs:=2;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; { p(1)p(1)p(2)p(2)}
6: begin { p(2)p(2)p(1)p(1)}

for vs:=1 to 4 do {4 porque esta secuencia tiene 4 silabas}
begin
case vs of
1: cs:=2;
2: cs:=2;
3: cs:=1;
4: cs:=1;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; { p(2)p(2)p(1)p(1)}

7: begin { p(1)p(1)p(2)p(1)p(1)}

for vs:=1 to 5 do {5 porque esta secuencia tiene 5 silabas}
begin
case vs of
1: cs:=1;
2: cs:=1;
3: cs:=2;
4: cs:=1;
5: cs:=1;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; { p(1)p(1)p(2)p(1)p(1)}

8: begin { p(2)p(2)p(2)}

for vs:=1 to 3 do {3 porque esta secuencia tiene esa cantidad de silabas}
begin
case vs of
1: cs:=2;
2: cs:=2;
3: cs:=2;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; { p(2)p(2)p(2)}
9: begin { p(6)}

for vs:=1 to 1 do {1 porque esta secuencia tiene esa cantidad de silabas (o palabras, hablamos de 6 letras)}
begin
case vs of
1: cs:=6;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; { p(6)}

end;{case m6l}

end; {for}

END; {palabras 6 letras}

7: BEGIN

{1 PALABRA de 7 letras}
{procedimiento especial (es posible 3 vocales o 3 consonantes juntas)
Referencia
opcionesdelmenu[1]:=’p1p1p2p2p1′;
opcionesdelmenu[2:=’p1p2p2p1p1′;
opcionesdelmenu[3]:=’p1p1p2p1p2′;
opcionesdelmenu[4]:=’p1p2p1p1p2′;
opcionesdelmenu[5]:=’p1p2p1p2p1′;
opcionesdelmenu[6]:=’p2p1p1p2p1′;
opcionesdelmenu[7]:=’p2p1p2p1p1′;
opcionesdelmenu[8]:=’p1p2p2p2′;
opcionesdelmenu[9]:=’p2p1p2p2′;
opcionesdelmenu[10]:=’p2p2p1p2′;
opcionesdelmenu[11]:=’p2p2p2p1′;
opcionesdelmenu[12]:=’p7′;
opcionesdelmenu[13]:=’Todas’;
}

{1 PALABRA de 7 letras}
{procedimiento especial (es posible 3 vocales o 3 consonantes juntas)}
for xcen:=1 to 1 do
begin
if combinacion<>13 then {teniendo en cuenta la eleccion de combinacion el menu horizontal,
12 es la opcion elegida para considerar todas las posibilidades ofrecidas, si no es 13
es porque se eligio una combinación que hay que considerarla para m7l y nos
olvidamos de la combinacion aleatoria}
m7l:=combinacion
else
begin
{Aqui con la variable: proenglishm7l y un artiluguo con ella,
yo estoy aumentando la probabilidad de que mi algoritmo genere palabras
de 6 letras que puedan coincidir con el ingles, Aleman u otro idioma
donde dos o mas consonantes o vocales juntas son mas frecuentes a partir
de cualquier posición de la palabra, son palabras tales como:
FEELING (p(2)+p(1)+p(2)+p(1)+p(1)),
es decir que forme palabras en las combinacion arriba cuando
valores de m7l (maximo 7 letras) es 6}
proenglishm6l:=random(2); {se genera un valor al azar del 0 a 1}
if proenglishm7l=0 then
m7l:=random(13)+1 {aqui sigo el proceso regular}
else {si no es cero entonces es 1}
m7l:=6;{fuerzo elegir combinacion con mas posibildades de formar palabras anglosajonas}

{ Las combinaciones a considerar segun valor de m7l:
p(1)p(1)p(2)p(2)p(1)
p(1)p(2)p(2)p(1)p(1)
p(1)p(1)p(2)p(1)p(2)
p(1)p(2)p(1)p(1)p(2)
p(1)p(2)p(1)p(2)p(1)
p(2)p(1)p(1)p(2)p(1)
p(2)p(1)p(2)p(1)p(1)
p(1)p(2)p(2)p(2)
p(2)p(1)p(2)p(2)
p(2)p(2)p(1)p(2)
p(2)p(2)p(2)p(1)
p(7)

}
end;

case m7l of
1: begin {p(1)p(1)p(2)p(2)p(1)}

for vs:=1 to 5 do {5 porque esta secuencia tiene esa cant de silabas c/u con cs letras}
begin
case vs of
1: cs:=1;
2: cs:=1;
3: cs:=2;
4: cs:=2;
5: cs:=1;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; {p(1)p(1)p(2)p(2)p(1)}

2: begin { p(1)p(2)p(2)p(1)p(1)}

for vs:=1 to 5 do {5 porque esta secuencia tiene esa cant de silabas c/u con cs letras}
begin
case vs of
1: cs:=1;
2: cs:=2;
3: cs:=2;
4: cs:=1;
5: cs:=1;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; {p(1)p(2)p(2)p(1)p(1)}

3: begin { p(1)p(1)p(2)p(1)p(2)}

for vs:=1 to 5 do {5 porque esta secuencia tiene esa cant de silabas c/u con cs letras}
begin
case vs of
1: cs:=1;
2: cs:=1;
3: cs:=2;
4: cs:=1;
5: cs:=2;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; { p(1)p(1)p(2)p(1)p(2)}

4: begin {p(1)p(2)p(1)p(1)p(2)}

for vs:=1 to 5 do {5 porque esta secuencia tiene esa cant de silabas c/u con cs letras}
begin
case vs of
1: cs:=1;
2: cs:=2;
3: cs:=1;
4: cs:=1;
5: cs:=2;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; {p(1)p(2)p(1)p(1)p(2)}

5: begin { p(1)p(2)p(1)p(2)p(1)}

for vs:=1 to 5 do
begin
case vs of
1: cs:=1;
2: cs:=2;
3: cs:=1;
4: cs:=2;
5: cs:=1;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; { p(1)p(2)p(1)p(2)p(1)}

6: begin { p(2)p(1)p(1)p(2)p(1)}

for vs:=1 to 5 do {5 porque esta secuencia tiene 5 silabas}
begin
case vs of
1: cs:=2;
2: cs:=1;
3: cs:=1;
4: cs:=2;
5: cs:=1;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; { p(2)p(1)p(1)p(2)p(1)}
7: begin { p(2)p(1)p(2)p(1)p(1)}

for vs:=1 to 5 do
begin
case vs of
1: cs:=2;
2: cs:=1;
3: cs:=2;
4: cs:=1;
5: cs:=1;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; { p(2)p(2)p(2)}

8: begin { p(1)p(2)p(2)p(2)}

for vs:=1 to 4 do
begin
case vs of
1: cs:=1;
2: cs:=2;
3: cs:=2;
4: cs:=2;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; { p(1)p(2)p(2)p(2)}

9: begin { p(2)p(1)p(2)p(2)}

for vs:=1 to 4 do
begin
case vs of
1: cs:=2;
2: cs:=1;
3: cs:=2;
4: cs:=2;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; { p(2)p(1)p(2)p(2)}

10: begin { p(2)p(2)p(1)p(2)}

for vs:=1 to 4 do
begin
case vs of
1: cs:=2;
2: cs:=2;
3: cs:=1;
4: cs:=2;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; { p(2)p(2)p(1)p(2)}

11: begin { p(2)p(2)p(2)p(1)}

for vs:=1 to 4 do
begin
case vs of
1: cs:=2;
2: cs:=2;
3: cs:=2;
4: cs:=1;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; { p(2)p(2)p(2)p(1)}

12: begin { p(7)}

for vs:=1 to 1 do {1 porque esta secuencia tiene esa cantidad de silabas (o palabras, hablamos de 7 letras)}
begin
case vs of
1: cs:=7;
end;
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,cs,lpg,encolores); {el numero de letras en la silaba sera cs}

end;{for del valor de secuencia (vs)}

end; { p(7)}

end;{case m7l}

end; {for}

END; {palabras 7 letras}

8: BEGIN

{1 PALABRA de 8 letras}
{procedimiento especial (es posible 2 vocales o dos consonantes juntas)}

for xcen:=1 to 1 do
begin
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
gen:=random(2)+1;
if gen=1 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
repeat
elcolort:=random(8)+8;
until colorquemegusta(elcolort)=true;
textcolor(elcolort);
imprimesilabayc(gen,2,lpg,encolores);
end;

END;
END;{END OF CASE}
{if intento=26 then
lpg:=lp;}

for iint2:=1 to 6 do
palabrasl7[iint2]:=palabrasl7[iint2+1];
palabrasl7[7]:=lpg;

for iint2:=7 downto 1 do
if (palabrasl7[iint2])<>» then
begin
gotoxy(3,10+iint2);
write(‘Intento # ‘, intento-(7-iint2):12);
gotoxy(32,10+iint2);
write(palabrasl7[iint2]);

end;

gotoxy(43,17);
TEXTCOLOR(WHITE);
write(lp);
TEXTCOLOR(CYAN);
WRITE(‘ y ‘,lpg);

if lpg=lp then
begin
write(‘ son iguales ‘);
gotoxy(21,20);
textcolor(11+128); {cyan claro e intermitente}
write(‘LA PALABRA FUE ENCONTRADA EN EL INTENTO # ‘,intento);
textcolor(15+128); {blanco e intermitente}
gotoxy(1,25);clreol;
write(‘Pulsa cualquier tecla para salir’);
textcolor(15); {blanco}
repeat
Sound(220); { Beep }
Delay(144); { Durante 144 ms }
NoSound; { Y luego silencio }
Delay(30); {por media hora (1800000ms) por 0.00001666.. = 30 ms}
until keypressed;
encontrada:=true;

end
else
write(‘ son diferentes’);

delay(ubicador2);
if (keypressed) and (encontrada=false) then
begin
queteclafue:=readkey;
if queteclafue in[‘n’,’N’,’s’,’S’] then
confirma:=’ ‘;
Repeat
gotoxy(1,25);clreol;write(chr(168));
write(‘Confirmas que quieres salir? s/n, s: salir, n: no salir y continuar busqueda’);
confirma:=readkey;
until (confirma=’S’) or (confirma=’s’) or (confirma=’n’) or (confirma=’N’);
if (confirma=’s’) or (confirma=’S’) then
tpress:=TRUE
else {se presiono n o N}
begin
tpress:=FALSE;
textcolor(15+128); {blanco e intermitente}
gotoxy(1,25);clreol;
write(‘Espera el resultado o pulsa cualquier tecla para pausar la busqueda y salir’);
end;
end;

Until (Intento=ubicador) or (encontrada=true) or (tpress=true);

if(encontrada=false) then
begin
gotoxy(21,20);
textcolor(lightred+128);
write(lp,’ No coincidio con ninguna de las ‘,intento, ‘ palabras’);
textcolor(15+128); {blanco e intermitente}
gotoxy(1,25);clreol;
write(‘Pulsa cualquier tecla para salir’);
textcolor(15); {blanco}
repeat
Sound(333);
Delay(66);
NoSound;
Delay(99);
Sound(99);
Delay(33);
NoSound;
Delay(92);
until keypressed;
end;
readkey;
end;

END;

Procedure ejecutaopc1;
Begin
teclan:=’ ‘;
rep:=false;

tipo:=’ ‘;
TextBackground(black);
Textcolor(cyan);

Repeat
colin:=0;
cint1:=0;
cint2:=0;
shewillfindme:=0;
yy:=0;
zz:=0;

Clrscr;
if (teclan=’C’) or (teclan=’c’) then
begin
filai:=incref+1;
end
else
begin
clrscr;
Repeat
writeln(‘Elige # de la lista:’);
writeln(‘[1] – Varios idiomas: 513(v) y 956(p)’);
writeln(‘[2] – Ingles: 60(v) y 140(p)’);
nrolista:=0;
teclal:=readkey;
if teclal=’1′ then
nrolista:=1;
if teclal=’2′ then
nrolista:=2;
Until (nrolista in[1..2]);

if nrolista=1 then
lista:=’Ref. Multi idiomas’
else
lista:=’Ref. Only English’;
Repeat
write(‘Posts por serie (max9):’);readln(maxp);
Until (maxp>=0) and (maxp<10);
Repeat
write(‘Videos por serie (max 5):’);readln(maxv);
Until (maxv>=0) and (maxv<6);
teserie:=maxp+maxv;
if teserie<9 then
lvxp:=24
else
lvxp:=12;
write(‘Serie empieza en :’);
readln(filai);
repeat
write(‘Registros por pantalla (1..’,lvxp:2,’) :’);
readln(fxp);
until (fxp>0) and (fxp<=lvxp);
if detm2(filai) then
textcolor(lightblue)
else
textcolor(lightred);
case (teserie) of
1..7 : maxbloques:=2*fxp;
8..14: if fxp*2<=24 then
maxbloques:=2*fxp
else
maxbloques:=24;
end;
write(‘Se mostraran ‘, (maxbloques/2):4:2,’ registros a partir de ‘, filai,’, pulsa tecla para continuar’);
readkey;
Clrscr;
incref:=filai;
end;
For cint1:=1 to maxbloques do
begin
colin:=colin+1;
if (colin>2) and (colin<5) then
begin
if yy=0 then
repeat
elcolort:=random(7)+1;
until colorquemegusta(elcolort)=true
else
if yy=2 then
begin
repeat
elcolort:=random(8)+1;
until colorquemegusta(elcolort)=true;
yy:=0;
end;
textcolor(elcolort);
if colin=4 then
colin:=0;
yy:=yy+1;
end
else
begin
if zz=0 then
repeat
elcolort:=random(7)+9;
until colorquemegusta(elcolort)
else
if zz=2 then
begin
repeat
elcolort:=random(7)+9; {8}
until colorquemegusta(elcolort);
zz:=0;
end;
textcolor(elcolort);
zz:=zz+1;
end;
cint2:=cint2+1;
if cint2=1 then
begin
if nrolista=1 then
ai20me:=956
else
ai20me:=140;
tipo:=’p’;
shewillfindme:=maxp;
end
else
begin
if nrolista=1 then
ai20me:=513
else
ai20me:=60;
tipo:=’v’;
shewillfindme:=maxv;
end;
{inicializo matriz}
For gabrielswork := 1 to shewillfindme do
datos[gabrielswork]:=0;
{me aseguro de que no se generen numeros repetidos
para llenar la matriz}
For gabrielswork := 1 to shewillfindme do
begin
gen:=Random(ai20me)+1;
if gabrielswork>1 then
begin
rep:=false;
for x1:=1 to gabrielswork do
Begin
if datos[x1]=gen then
Begin
gabrielswork:=gabrielswork-1;
x1:=gabrielswork;
rep:=true;
end;
End;
if rep=false then
datos[gabrielswork]:=gen;
End
else
datos[gabrielswork]:=gen;
end;
{aqui ordeno la lista}

for x1:=shewillfindme downto 2 do
for x2:=1 to x1-1 do
if datos[x2]>datos[x2+1] then
begin
ntiendme:=datos[x2+1];
datos[x2+1]:=datos[x2];
datos[x2]:=ntiendme;
end;
{muestro la lista ordenada con su respectiva leyenda}
if tipo=’p’ then
begin
textcolor(elcolort+128);
write(‘Serie ‘,incref:4);
textcolor(elcolort);
incref:=incref+1;
end;
for x1:=1 to shewillfindme do
write(datos[x1]:4,’ (‘,tipo,’) ‘);
if (cint2=2) then
begin
writeln;
cint2:=0;
end;
end;
write(lista,chr(179),’Pulse N para salir, C para continuar, otro para repetir’);
teclan:=Readkey;
until (teclan=’n’) or (teclan=’N’);

End;
procedure limpiazona(ci,fi,cf,ff: byte);
var ca,fa,i,j:byte;
begin
ca:=wherex;
fa:=wherey;
for i:=ci to cf do
for j:=fi to ff do
begin
gotoxy(i,j);
if (i=80) and (j=25) then
clreol
else
write(‘ ‘);
end;
gotoxy(ca,fa);
end;

procedure menuhorizontal(fila, combisilabas: longint; var lacombinacion:longint);
{el menu que produce no siempre sera horizontal, segun el numero de elementos
tambien puede ser vertical}
var
orientacionhorizontal:boolean;
tmenu,recorrido: longint;

quetecla:char;
seeligioalgo:boolean;
begin
orientacionhorizontal:=true;
for recorrido:=1 to 13 do
opcionesdelmenu[recorrido]:=»;
seeligioalgo:=false;
case combisilabas of
2:
begin
opcionesdelmenu[1]:=’p2′;
opcionesdelmenu[2]:=’p1p1′;
opcionesdelmenu[3]:=’Todas’;
tmenu:=3;
end;
3:
begin
opcionesdelmenu[1]:=’p2p1′;
opcionesdelmenu[2]:=’p1p2′;
opcionesdelmenu[3]:=’p1p1p1′;
opcionesdelmenu[4]:=’p3′;
opcionesdelmenu[5]:=’Todas’;
tmenu:=5;
end;
4:
begin
opcionesdelmenu[1]:=’p2p2′;
opcionesdelmenu[2]:=’p2p1p1′;
opcionesdelmenu[3]:=’p1p2p1′;
opcionesdelmenu[4]:=’p1p1p2′;
opcionesdelmenu[5]:=’p4′;
opcionesdelmenu[6]:=’Todas’;
tmenu:=6;
end;
5:
begin
opcionesdelmenu[1]:=’p2p2p1′;
opcionesdelmenu[2]:=’p2p1p2′;
opcionesdelmenu[3]:=’p1p2p2′;
opcionesdelmenu[4]:=’p1p1p2p1′;
opcionesdelmenu[5]:=’p1p2p1p1′;
opcionesdelmenu[6]:=’p5′;
opcionesdelmenu[7]:=’Todas’;
tmenu:=7;
end;
6:
begin
opcionesdelmenu[1]:=’p1p2p2p1′;
opcionesdelmenu[2]:=’p1p2p1p2′;
opcionesdelmenu[3]:=’p2p1p1p2′;
opcionesdelmenu[4]:=’p2p1p2p1′;
opcionesdelmenu[5]:=’p1p1p2p2′;
opcionesdelmenu[6]:=’p2p2p1p1′;
opcionesdelmenu[7]:=’p1p1p2p1p1′;
opcionesdelmenu[8]:=’p2p2p2′;
opcionesdelmenu[9]:=’p6′;
opcionesdelmenu[10]:=’Todas’;
tmenu:=10;
orientacionhorizontal:=false;
end;
7:
begin
opcionesdelmenu[1]:=’p1p1p2p2p1′;
opcionesdelmenu[2]:=’p1p2p2p1p1′;
opcionesdelmenu[3]:=’p1p1p2p1p2′;
opcionesdelmenu[4]:=’p1p2p1p1p2′;
opcionesdelmenu[5]:=’p1p2p1p2p1′;
opcionesdelmenu[6]:=’p2p1p1p2p1′;
opcionesdelmenu[7]:=’p2p1p2p1p1′;
opcionesdelmenu[8]:=’p1p2p2p2′;
opcionesdelmenu[9]:=’p2p1p2p2′;
opcionesdelmenu[10]:=’p2p2p1p2′;
opcionesdelmenu[11]:=’p2p2p2p1′;
opcionesdelmenu[12]:=’p7′;
opcionesdelmenu[13]:=’Todas’;
tmenu:=12;
orientacionhorizontal:=false;
end;
end; {case combisilabas}
lacombinacion:=1;

Repeat
gotoxy(1,fila);
textbackground(black);
textcolor(white);
clreol;
if orientacionhorizontal then
write(‘Elige, usa ‘,chr(27),’/’,chr(26),’ & enter ‘)
else
write(‘Elige, usa ‘,chr(24),’/’,chr(25),’ & enter ‘);
for recorrido:=1 to tmenu do
begin
if recorrido=lacombinacion then
begin
textbackground(green);
textcolor(black)
end
else
begin
textbackground(black);
textcolor(lightgreen);
end;
if orientacionhorizontal=false then
gotoxy(40,fila+recorrido-1);

write(opcionesdelmenu[recorrido]);
if recorrido<tmenu then
begin
textcolor(green);
write(chr(179));
end;
end;
repeat
quetecla:=readkey;
if quetecla=#13 then
seeligioalgo:=true;
if quetecla=#0 then
quetecla:=readkey;
{#72 arriba, #80 abajo, #75 izquierda, #77 derecha}
case orientacionhorizontal of
true:
case quetecla of
#75: if lacombinacion=1 then
lacombinacion:=tmenu
else
lacombinacion:=lacombinacion-1;
#77: if lacombinacion=tmenu then
lacombinacion:=1
else
lacombinacion:=lacombinacion+1;
end;
false:{el menu debe ser vertical}
case quetecla of
#72: if lacombinacion=1 then
lacombinacion:=tmenu
else
lacombinacion:=lacombinacion-1;
#80: if lacombinacion=tmenu then
lacombinacion:=1
else
lacombinacion:=lacombinacion+1;
end;
end; {de la evaluacion de la orientacionhorizontal}
until (quetecla in [#75,#77,#72,#80]) or (seeligioalgo=true);
until (seeligioalgo=true);
textbackground(black);
textcolor(cyan);
limpiazona(1,7,80,25);
end;

procedure sugiereformaciones(tpalabrai: longint;palabrai: string);
var rr,ee,sandraebcfeamc:byte;
estructuravc:string;
begin
sandraebcfeamc:=0;
{cosu – arreglo para estructura composicion sugerida que
hace posible la generacion de la palabra segun su estructura vc}
{Inicializo el arreglo bidimensional}
for rr:=1 to 102 do
begin
cosu[rr,1]:=»;
cosu[rr,2]:=»;
end;
{Inicializo el arreglo unidimensional donde
recolectare las sugerencias de patrones
de formacion de palabras}
for rr:=1 to 21 do
begin
sesu[rr]:=»;
sesu[rr]:=»;
end;
{le asignare a los primeros 6 elementos
de bicadenas, los valores que corresponden
en caso de palabras de 2 letras
1 2
1 p2 cv
2 p2 vc
3 p1p1 vv
4 p1p1 cc
5 p1p1 cv
6 p1p1 vc }

cosu[1,1]:=’p2′;cosu[1,2]:=’cv’;
cosu[2,1]:=’p2′;cosu[2,2]:=’vc’;
cosu[3,1]:=’p1p1′;cosu[3,2]:=’vv’;
cosu[4,1]:=’p1p1′;cosu[4,2]:=’cc’;
cosu[5,1]:=’p1p1′;cosu[5,2]:=’cv’;
cosu[6,1]:=’p1p1′;cosu[6,2]:=’vc’;
{le asignare a los elementos a partir del 7mo
de bicadenas, los valores que corresponden
en caso de palabras de 3 letras

7 p2p1 cvc
8 p2p1 vcc
9 p2p1 cvv
10 p2p1 vcv
11 p1p2 vvc
12 p1p2 vcv
13 p1p2 cvc
14 p1p2 ccv
15 p1p1p1 ccc
16 p1p1p1 ccv
17 p1p1p1 cvv
18 p1p1p1 vvv
19 p1p1p1 vvc
20 p1p1p1 vcc
21 p1p1p1 vcv
22 p1p1p1 cvc
23 p3 cvc
24 p3 vcv}
cosu[7,1]:=’p2p1′;cosu[7,2]:=’cvc’;
cosu[8,1]:=’p2p1′;cosu[8,2]:=’vcc’;
cosu[9,1]:=’p2p1′;cosu[9,2]:=’cvv’;
cosu[10,1]:=’p2p1′;cosu[10,2]:=’vcv’;
cosu[11,1]:=’p1p2′;cosu[11,2]:=’vvc’;
cosu[12,1]:=’p1p2′;cosu[12,2]:=’vcv’;
cosu[13,1]:=’p1p2′;cosu[13,2]:=’cvc’;
cosu[14,1]:=’p1p2′;cosu[14,2]:=’ccv’;
cosu[15,1]:=’p1p1p1′;cosu[15,2]:=’ccc’;
cosu[16,1]:=’p1p1p1′;cosu[16,2]:=’ccv’;
cosu[17,1]:=’p1p1p1′;cosu[17,2]:=’cvv’;
cosu[18,1]:=’p1p1p1′;cosu[18,2]:=’vvv’;
cosu[19,1]:=’p1p1p1′;cosu[19,2]:=’vvc’;
cosu[20,1]:=’p1p1p1′;cosu[20,2]:=’vcc’;
cosu[21,1]:=’p1p1p1′;cosu[21,2]:=’vcv’;
cosu[22,1]:=’p1p1p1′;cosu[22,2]:=’cvc’;
cosu[23,1]:=’p3′;cosu[23,2]:=’cvc’;
cosu[24,1]:=’p3′;cosu[24,2]:=’vcv’;

{una estructura vc puede tener mas de una opcion de formacion,
ejm vc (vocal+consonante) puede ser formada
via p2 o via p1p1,
lo tendre en cuenta en el proceso de seleccion de opciones}

estructuravc:=»;
for ee:=1 to tpalabrai do
if detvocal(palabrai[ee])=TRUE then
estructuravc:=estructuravc+’v’
else
if detvocal(palabrai[ee])=FALSE then
estructuravc:=estructuravc+’c’;
writeln(‘La estructura vocal / consontante(vc) de la palabra que ingresaste es:’,estructuravc);
{hare la prueba de mi idea de sugerir estructuras de composicion con palabras de 2 letras}
if tpalabrai in[2..3] then
begin
write(‘Estructuras que pueden formar la palabra ‘,lp,’:’);
for ee:=1 to 102 do
begin
if estructuravc=cosu[ee,2] then
begin
sandraebcfeamc:=sandraebcfeamc+1;
sesu[sandraebcfeamc]:= cosu[ee,1];
{ s ebc mc ?? -> https://dontmissit665019001.files.wordpress.com/2022/04/el-monstruo-en-computacion-de-idat.docx }
end;
end; {end for que acumula las opciones}
for ee:=1 to 21 do
if (sesu[ee]<>») then
begin
write(sesu[ee],’ ‘);
end; {del for que muestra las opciones acumuladas}
end; {end if – veamos si funciona para implementar las sugerencias para palabras con mas de tres letras}

end;

{INICIO DEL PROGRAMA
PASCAL TIENE LA LIMITACION DE QUE EL PROGRAMA PRINCIPAL
NO PUEDE SER MUY LARGO EN CODIFICACION, A SABER HASTA 24K,
POR ESO HE ESTABLECIDO RUTINAS PARA CADA OPCION DEL MENU
PRINCIPAL
}

Begin
Randomize;
Repeat
ocentrado:=false;
tecla:=’ ‘;
menudeopciones(lomenu,1);
case lomenu of
1: ejecutaopc1;{numeros aleatorios}
2: ejecutaopc2;{palabras aleatorias}
33: ejecutaopc3;{buscar palabra de 2 hasta 7 letras }
end;
until (lomenu=3);
End.