viernes, 31 de octubre de 2014

Algoritmo para contar cuantas veces se repite un número K en una lista de números entrada por el usuario


Algoritmo para contar cuantas veces se repite un número K en una lista de números entrada por el usuario


  En ocasiones necesitamos saber que tantas veces se repite cierto elemento de entre una lista de elementos, para poder hacer un conteo de las repeticiones en que podemos encontrar dicho elemento podemos usar un algoritmo como el que sigue.


  Se definen la variables o sea se nombran y se les define un tipo especifico según lo que necesitemos calcular o variar para nuestro propósito, inicializamos las variables para que sea valida al usarla en un ciclo o instrucción definida, pedimos la cantidad de números que pondremos en la lista y seguido pedimos el numero que vamos a verificar sus repeticiones dentro de la lista de n elementos.

 Algoritmo:

Proceso kRepetido
     Definir i,n,nk,k,cont Como Entero;
     n<-0;
     cont<-0;
    
     Escribir "Cantidad de números:";
     Leer n;
     Escribir "Número a contar:";
     Leer k;
    
     Para i<-0 Hasta n-1 Con Paso 1 Hacer
         Escribir "Número:";
         Leer nk;
         si(nk==k)Entonces
              cont<-cont+1;
         FinSi
     FinPara
    
     Escribir "Número ",k," aparece ",cont," veces";

FinProceso




lunes, 20 de octubre de 2014

Algoritmo Ecuación de segundo grado con una incógnita FORMULA GENERAL

 Definición y algoritmo


  Una ecuación de segundo grado o ecuación cuadrática de una variable es una ecuación que tiene la forma de una suma algebraica de términos cuyo grado máximo es dos, es decir, una ecuación cuadrática puede ser representada por un polinomio de segundo grado o polinomio cuadrático. 

La expresión canónica general de una ecuación cuadrática de una variable es:




  Donde x representa la variable y a, b y c son constantes; a es el coeficiente cuadrático (distinto de 0), b el coeficiente lineal y c es el término independiente. Este polinomio se puede representar mediante una gráfica de una función cuadrática o parábola. Esta representación gráfica es útil, porque la intersección de esta gráfica con el eje horizontal coincide con las soluciones de la ecuación (y dado que pueden existir dos, una o ninguna intersección, esos pueden ser el número de soluciones reales de la ecuación).

Algoritmo:


Proceso Ecuacion2grado
Definir A,B,C,c1,b2 Como Entero;
Definir opArit Como Texto;
Definir solucion1,solucion2,igualadoA,raizz,resta,ac4 Como Real;
raizz<-0;
c1<-0;
b2<-0;
opArit<-" + ";

Escribir "Coeficiente de X^2:";
Leer A;
Escribir "Coeficiente de X^1:";
Leer B;
Escribir "Coeficiente de (X^0=1):";
Leer C;
Escribir "Igualdad de Ecuacion:";
Leer igualadoA;
Escribir "";
Escribir "Forma de la Ecuacíon: ",A,"X^2 + ",B,"X^1 + ",C,"X^0 = ",igualadoA;
Escribir "";
c1<-C;
C<-C-igualadoA;
igualadoA<-0;
Escribir "Al igualar con 0 tenemos: ",A,"X^2 + ",B,"X^1 + (",C,"X^0) = ",igualadoA;
b2<-B^2;
resta<-0;
ac4<-4*A*c1;
resta<-b2-ac4;

si(resta>=0)Entonces
solucion1<- ((-B+raiz(resta))/(2*A));
solucion2<- ((-B-raiz(resta))/(2*A));
Escribir "";
Escribir "Solución 1: X = ",solucion1;
Escribir "Solución 2: X = ",solucion2;
Sino
Escribir "";
Escribir "Sin Solución raiz negativa....";
FinSi
FinProceso



lunes, 13 de octubre de 2014

Calcular que dia de la semana es cualquier fecha dada año-mes-dia Algoritmo Zeller

Un poco de historia:


  Dado que el calendario gregoriano fue adoptado en diferentes momentos en diferentes partes del mundo, la ubicación de un evento es significativa a la hora de determinar el día de la semana correcto de una fecha que tuvo lugar durante este periodo de transición.

Algoritmo de Zeller en PSeint:


Proceso diaDeXA
                Definir dia,t,semana,mes,ano Como Entero;
                Definir n Como Texto;
                Dimension t[12];
                Dimension n[7];
                t[0]<-0;                                              
                t[1]<-3;
                t[2]<-2;
                t[3]<-5;
                t[4]<-0;
                t[5]<-3;
                t[6]<-5;
                t[7]<-1;
                t[8]<-4;
                t[9]<-6;
                t[10]<-2;
                t[11]<-4;
                n[0]<-"Domingo";
                n[1]<-"lunes";
                n[2]<-"martes";
                n[3]<-"miercoles";
                n[4]<-"jueves";
                n[5]<-"viernes";
                n[6]<-"sabado";
                Escribir "Año:";
                Leer ano;
                Escribir "Mes:";
                Leer mes;
                Escribir "Día:";
                Leer dia;
                si((dia>=1 && dia<=31)&&(mes>=1 && mes<=12))entonces
                               si(mes<3)Entonces
                                               ano<-ano-1;
                               FinSi
                               semana<-(ano+trunc(ano/4)-trunc(ano/100)+trunc(ano/400)+t[mes-1]+dia)%7;
                               Escribir n[semana];
                FinSi

FinProceso


Zeller:


  Zeller fue un importante representante del método histórico-crítico. En Teología, trató cuestiones del paleocristianismo. En Filosofía, inicialmente se orientó en la línea de Hegel, pero, posteriormente, se acercó más a Kant. Es uno de los primeros representantes del neokantismo y del neocriticismo. Además, es uno de los más importantes historiadores de la filosofía griega antigua. Su obra en varios tomos Die Philosophie der Griechen in ihrer geschichtlichen Entwicklung (La filosofía griega en su evolución histórica) ha experimentado, hasta la fecha (2009), numerosas ediciones y reimpresiones y ha sido traducida a diferentes lenguas. En el campo de la filosofía sistemática, en 1862 fue pionero en esbozar, en su escrito Über Bedeutung und Aufgabe der Erkenntnistheorie, los objetos específicos y el concepto de una Teoría del conocimiento


jueves, 2 de octubre de 2014

Algoritmo de planificación de procesos FIFO

Planificación de procesos:


Colas de planificación:
– El S.O. usa una serie de colas para planificar los recursos
(Memoria, E/S, CPU etc.).
• Cola de trabajos:
– Procesos en almacenamiento secundario esperando memoria
principal.
• Cola de procesos listos:
– Procesos en memoria principal, listo y esperando su
ejecución (una lista ligada).
• Cola de dispositivos:
– Para cada dispositivo (disco, impresora, etc.) hay una cola de
procesos esperando utilizarlo.

Algoritmo de planificación de procesos FIFO en PSeint:


Proceso FIFO

      ESCRIBIR "ALGORITMO DE PLANIFICACIÓN DE PROCESOS FIFO";
      ESCRIBIR "";
      ESCRIBIR "NÚMERO DE PROCESOS: ";
      LEER nProcesos;
      Para i<-1 hasta nProcesos con paso 1 Hacer
            ESCRIBIR "Tiempo de ejecución proceso[",i,"]:";
            LEER tiempoExe;
            Para l<-1 Hasta tiempoExe Con Paso 1 Hacer
                  repre<-repre+"P"+ConvertirATexto(i)+"|";
                  sub<-sub+1;
            Fin Para
            sumaFIFO<-sumaFIFO+sub;
            operador<-" + ";
            si(i==nProcesos)
                  operador<-" ) / "+ConvertirATexto(nProcesos)+" = ";
            FinSi
            repre2<-repre2+ConvertirATexto(sub)+operador;
      FinPara
      TPR<-sumaFIFO/nProcesos;
      ESCRIBIR "REPRESENTACION: ",repre;
      ESCRIBIR "T.P.R = (",repre2," ",TPR;

FinProceso

miércoles, 1 de octubre de 2014

Algoritmo Mínimo y Máximo de una lista de números

Mínimo y Máximo 


  Como sus nombres lo indican es como obtener los elementos de menor y mayor valor numérico contenidos en una lista finita de n números.

  • Como primer paso debemos tener nuestra lista de números (arreglo). 
  • Segundo asignar el valor del primer elemento de la lista a dos variables min y max por ejemplo. 
  • Iterar n-1 veces la cantidad de elementos de la lista n-1 la posición inicial es 0 regularmente y preguntar si el valor de la lista en la posición actual es > o < según el caso y asignar el valor de la lista en la o variables si la repuesta es afirmativa. 

Algoritmo mínimo y máximo: