martes, 4 de enero de 2011

Ver cuantos datos se repiten en una matriz

Buscar en un a matriz (N1xN2) un valor introducido por el usuario indicando en cuantas posiciones aparece :

{Definiciones de tipo anteriores}
Variable
M: Matriz;
i, j, valor, cuantas : entero;
Inicio
Leer (valor);
Cuantas:=0;
{Suponemos creada la matriz}
desde i:=1 hasta N1hacer
Desde j:=1 hasta N2 hacer
si M[i,j] = valor entonces
cuantas :=cuantas +1;
Escribir ( ‘El valor introducido esta en la posición’, i,’ ‘,j);
fin_si;
fin_desde;
fin_desde;
Escribir (‘El valor aparece’, cuantas, ‘veces’);
Fin.

Introducir datos en un vector preguntando

Lectura de los datos del vector, preguntando al usuario.
…………………………….
i:=1;
fin_datos:=0;
repetir
Escribir (‘¿Quieres introducir datos en el vector (S/N)?’);
Leer (respuesta);
Hasta (respuesta = ‘S’) o (respuesta= ‘N’)
Mientras (respuesta = ‘S’) y ( i<= max) hacer
leer (mivector[i]);
i:=i+1;
fin_datos:=fin_datos+1;
si ( i<= max) entonces
repetir
Escribir (‘¿Quieres introducir datos en el vector (S/N)?’);
Leer (respuesta);
Hasta (respuesta = ‘S’) o (respuesta= ‘N’)
Si_no
Escribir (‘¿el vector ya está completo?’);
Fin_si;
fin_mientras;

menu

Program examen;
uses wincrt;
var
i:integer;
n:char;
begin
Repeat
begin
writeln('1-Ejercicio 1');
writeln('2-Ejercicio 2');
writeln('0-Salir');
readln(n);
i:=1;
end;
case (n) of

'1': begin
Writeln('Introduzca el numero');
end;
'2': begin
Writeln('Introduzca el numero');
end;
'0':begin
clrscr;
writeln('Adios');
end;
else
begin
clrscr;
writeln('Opción erronea');
i:=2;
end
end
until (i=1);
end.

Introducir datos en un vector

*Introducir datos en un vector

program vectores_1;
uses wincrt;
const
max=10;
type
dias=array[1..max]of string;
var
a:dias;
i,s:integer;
j:string;

begin

for i:=1 to max do
begin
readln(a[i]);
j:=(j+a[i]);
end;
j:=(j+a[i]);

end.

Fibonacci

*Obtener secuencia de Fibonacci

Algoritmo
Var
i, n, ult, penult, suma: entero

inicio

Leer (n)
suma := 1
ult := 1
penult := 1
desde i:= 2 hasta n hacer
suma := ult + penult
penult := ult
ult := suma
Fin desde
Escribir (“Fibonacci de “, n, “=”, suma)
fin

numeros primos

codigo:

*Obtener si un numero es primo o no

Algoritmo
Var
n, aux: entero
primo: logico

inicio

leer (n)
aux := 2
primo := verdadero

mientras (aux <=n) y (primo) hacer
si n mod aux <> 0 entonces
aux:= aux + 1
si_no
primo:= falso
fin si
fin mientras
si primo entonces
escribir (“El número es primo”)
si_no
escribir (“El número no es primo”)
fin_si
fin