La Red de Conocimientos Pedagógicos - Aprendizaje de redacción de artículos/tesis - Acerca del grupo de secundaria de la competencia de informática de la Olimpiada Nacional

Acerca del grupo de secundaria de la competencia de informática de la Olimpiada Nacional

Con pascal7.0, el primer capítulo comienza a escribir programas en lenguaje pascal.

Capítulo 2 Conocimientos básicos del lenguaje Pascal

Capítulo 3 Programación de estructura secuencial

Capítulo 4 Selección de programación estructurada.

Capítulo 5 Planificación de estructuras circulares

Eso es todo. 1.1 Entorno de edición de Pascal

2.1 Caracteres y símbolos de Pascal

1. Identificadores

(1) Definición de identificador: un identificador es una letra que comienza con la letra A. secuencia de números con una longitud válida de 63 caracteres, y los caracteres en mayúsculas y minúsculas son iguales. Se puede utilizar para marcar constantes, variables, procedimientos, funciones, etc. Por ejemplo, en el Ejemplo 1.1, Área (nombre del programa), pi (constante simbólica), s y r (nombre de la variable) son todos identificadores.

(2) Clasificación de identificadores:

A. Palabras reservadas (palabras clave)

Las llamadas palabras reservadas tienen significados específicos en el lenguaje Pascal. Debes entender su significado para usarlo correctamente, de lo contrario se producirán errores. El lenguaje Pascal estándar tiene 35 palabras reservadas y el lenguaje Turbo Pascal tiene 51. Las siguientes son palabras reservadas en lenguaje Pascal:

AND, ARRAY, BEGIN, CASE, CONST, DIV, DO, DOWNTO, ELSE, END, FILE, FOR, fun, GOTO, IF, IN, LABEL, MOD, NIL, NO, DE, O, EMBALADO, PROCEDIMIENTO, PROGRAMA, GRABAR, REPETIR, CONFIGURAR, ENTONCES.

bIdentificador estándar: se refiere al identificador predefinido en lenguaje Pascal, que tiene un significado especial.

La siguiente es una lista de algunos identificadores de tablas estándar comúnmente utilizados en el lenguaje Turbo Pascal:

Constante estándar Falso Maxint Verdadero

Tipo estándar Carácter booleano Entero real

p>

Función estándar Abs Arctan Chr Cos Eof Eoln Exp

En ronda Ord Pred impar

Sqrt retransmitido con éxito c

Procedimiento estándar Desechar Obtener nueva página de paquete Poner Leer

Readln restablecer reescribir desempaquetar escribir escribir

Entrada y salida de archivos estándar

Logotipo personalizado: según sus propias necesidades Definir. hágalo usted mismo.

(1) El identificador seleccionado no puede ser igual a una palabra reservada.

(2) Gramaticalmente, los identificadores estándar predefinidos se permiten como identificadores propios definidos, pero es mejor no usarlos.

Los caracteres que se pueden utilizar al definir identificadores se enumeran a continuación:

a——Z; a——z; =, & lt& gt, & lt=, & gt=, & lt, & gt,(,),[,],{,},:=,,,;,.,:,..,',^

2.2 Tipo de datos Pascal

Los datos son una parte importante de la programación. Su característica importante, el tipo de datos, determina la forma, el rango de valores y las operaciones en las que pueden participar los datos.

Turbo Pascal proporciona una gran cantidad de tipos de datos, que se dividen en tres categorías: tipos simples, tipos construidos y tipos de puntero. Los tipos simples se dividen en tipos estándar (enteros, reales, de caracteres y booleanos). y tipos personalizados (tipos de enumeración y tipos de sublímites), los estereotipos se dividen en tipos de matriz, tipos de colección, tipos de registros y tipos de archivos. A excepción de los tipos de puntero, que son tipos de datos dinámicos, todos estos tipos de datos son tipos de datos estáticos. Entre estos tipos de datos, los tipos simples son todos tipos ordenados y los tipos simples, excepto los tipos reales, son todos tipos ordenados. El llamado tipo ordenado significa que sus valores no solo están ordenados sino también secuenciados.

Este artículo presenta principalmente cuatro tipos de datos de uso común: entero, real, de caracteres y booleano.

1. Entero

Los datos enteros se utilizan para almacenar números enteros. Turbo Pascal admite cinco enteros predefinidos, a saber, entero corto, entero, entero largo, tipo de byte y fuente.

Turbo Pascal utiliza el mismo nombre que su identificador. Cada tipo especifica un rango correspondiente de valores enteros y el número de bytes de memoria ocupados.

Escriba el rango numérico en formato de bytes

Shortint-128...128 1 con signo de 8 bits

Intel-32768...32767 2 con signo 16 -bit

Longint-2147483648...2147483647 4 32 bits firmado

Byte 0..255 1 8 bits firmado

Palabra 0 ..65535 2 16 bits con signo.

Turbo Pascal especifica dos identificadores de constantes enteras predefinidas, maxint y maxlonint, que representan respectivamente ciertos valores constantes. maxint es 32767, longint es 2147483647 y sus tipos son Integer y longint respectivamente.

2. Tipo real

Los datos de números reales se utilizan para almacenar números reales. Turbo Pascal admite cinco tipos de números reales predefinidos, a saber, real (tipo de número real básico), simple (pero tipo de número real preciso), doble (tipo de número real de doble precisión), extendido (tipo de número real extendido) y comp (tipo de número real ensamblado). ). Turbo Pascal utiliza respectivamente el mismo nombre que su identificador. Cada tipo especifica un rango correspondiente de números reales, la cantidad de bytes de memoria que ocupan y la precisión que pueden lograr.

Dígitos significativos del tipo de rango numérico en bytes

True 2.9e-39..1.7e38 6 11..12

Único 1.5e -45.. 3.4e38 4 7..8

Dual 5.0e-324..1.7e308 8 15..16

Turbo Pascal admite dos tipos de generación de código que realizan operaciones reales Modo: software modo de emulación y modo de coma flotante 80x87. Excepto real, que puede ejecutarse directamente en modo de emulación de software, otros tipos deben ejecutarse en modo de punto flotante 80x87.

3. Tipo booleano

Los datos booleanos se utilizan para almacenar valores lógicos (valores booleanos). Solo hay dos valores booleanos: falso y verdadero. El número de secuencia de falso es 0 y el número de secuencia de verdadero es 1. Falso y verdadero son identificadores constantes predefinidos que representan falso lógico y verdadero lógico respectivamente. Real

4. Tipo de carácter

Char se utiliza como identificador del tipo de carácter. Los tipos de caracteres deben estar entre comillas simples. Cuando se utilizan letras como tipos de caracteres, las mayúsculas y las minúsculas no son equivalentes. El tipo de carácter solo permite un carácter entre comillas simples; de lo contrario, es una cadena.

2.3 Constantes y variables

1. Constantes

(1) Constante: Cantidad cuyo valor permanece sin cambios durante todo el proceso de ejecución del programa.

(2) Definición constante: La definición constante aparece en la parte de descripción. El formato de sintaxis es:

Constante

& ltConstante identificador> = & ltConstante>;

...

& lt constante identificador > = & lt constante >;

El tipo de identificador de constante está determinado por el tipo de constante que lo define. Por ejemplo, const a=12 implica que A es un número entero; Const r=3.21 implica que R es un tipo real. ......

(3) La parte de definición de constante debe comenzar con la palabra reservada const y puede contener una o varias definiciones de constante, cada constante termina con un punto y coma.

(4) Constantes de tipo Turbo Pascal

Las constantes de tipo, también llamadas constantes variables, son una característica extendida de Turbo Pascal. La definición de constantes de tipo es diferente de las definiciones de constantes y variables especificadas en Pascal estándar.

El formato de sintaxis de la definición de constante de tipo:

Constante

<Identificador de constante de tipo simple>;:Tipo simple=constante;

Por ejemplo:

Constante

Contador: entero = 0;

Bandera: booleano = verdadero

Índice: 0..100=0;

2. Variable

(1) Variable: La cantidad cuyo valor puede cambiar durante la ejecución del programa.

(2) Descripción de la variable: La descripción de la variable aparece en la sección de descripción. El formato de sintaxis es:

Definir variables

<Lista de identificadores de variables>;:<type>;

...

<Lista de identificadores de variables >;:<type>;

Entre ellos, la palabra reservada var indica el comienzo de la parte de descripción de la variable. Una lista de identificadores de variables es una secuencia de identificadores separados por comas, y el tipo después de los dos puntos es el identificador de tipo. Cada descripción de variable termina con un punto y coma.

Por ejemplo:

Definir variables

a, b, c: enteros

m, n: real

2.4 Funciones estándar

1. Funciones aritméticas

El tipo de parámetro identificador de función indica el tipo de resultado

El entero Abs y el valor absoluto real son iguales. como las variables independientes.

Entero arcangente

Cos entero, coseno real número real

Entero exponente, exponente real tipo número real

Frac entero, decimal real parte Número real

Entero int, entero real, entero real parcial

Entero, logaritmo natural real tipo de número real

Argumento pi tipo real pi

Entero seno, número real seno real

Sqr entero y cuadrado real son la misma variable independiente.

Entero cuadrado, tipo de número real de raíz cuadrada real

Por ejemplo: ABS(-4)= 4 ABS(-7.49)= 7.49 arctan(0)= 0.0.

sin(pi)= 0,0 cos(pi)=-1,0 frac(-3,71)=-0,71

int(-3,71)=-3,0 sqr(4)= 16 sqrt (4)= 2

2. Función estándar

El tipo de parámetro identificador de función indica el tipo de resultado

El entero impar determina el tipo booleano impar

El tipo discreto Pred encuentra variables independientes de convergencia directa

Tipo discreto Succ con la misma variable independiente continua

Por ejemplo: impar(1000)= false pred(2000)= 1999 succ( 2000) =2001.

odd(3)= true pred(' x ')= ' w succ(' x ')= ' y '

3. El tipo de parámetro identificador de función indica el tipo de resultado

El tipo de carácter correspondiente a la variable independiente chr byte

La variable independiente discreta secuencial corresponde a la longitud del número de secuencia.

Redondear números reales para redondear la longitud

Truncar números reales para truncar la longitud de enteros

Por ejemplo: chr(66)= ' b ' ord(' a ' )= 65 vuelta(-4.3)=-5 trunca(2.88)= 2.

4. Funciones varias

El tipo de parámetro identificador de función indica el tipo de resultado

Aleatorio no tiene variables independientes [0, 1, los números reales aleatorios son números reales .

Palabra aleatoria [0, entero aleatorio entre variables independientes]

Randomize inicializa el generador interno de números aleatorios de entero largo sin parámetros.

El tipo de carácter en mayúscula convierte letras inglesas minúsculas en caracteres en mayúscula.

El tipo de carácter en minúscula cambia las letras minúsculas en inglés a caracteres en mayúscula.

2.5 Operadores y Expresiones

65438+

(1) Los operadores

son tipos reales.

Si todos los operandos son números enteros y la operación no es división, el resultado es un número entero. Si la operación es división, el resultado es de tipo real. Operadores aritméticos

Tipo de resultado de operando de operación del operador

+ más tipo entero, tipo real Siempre que un operando sea de tipo real, el resultado es

- Resta. de números enteros, los tipos reales son tipos reales si todos los operandos son números enteros.

*Si se multiplican números enteros, si son de tipo número real y la operación no es división, el resultado es un número entero.

/Dividir entero, tipo real Si la operación es división, el resultado es tipo real.

Div divide un entero entero

módulo un entero entero

B Operadores lógicos

Tipo de resultado de operando de operación del operador

No lógico, no booleano, booleano

Y Tipos booleanos lógicos y booleanos

O Lógico OR Booleano Booleano

XOR Lógico XOR Booleano Booleano

C. Operadores relacionales

Tipo de resultado de operando de operación del operador

=Igual a tipo simple Tipo booleano

& lt& gtNo Igual a tipo simple Tipo booleano

& ltEl tipo booleano es menor que el tipo simple

& gtMayor que el tipo simple Tipo booleano

& lt=Menor o igual que el tipo simple Tipo booleano

& gt=Tipo booleano mayor o igual al tipo simple

(2) Prioridad

Prioridad del operador

No 1 ( alto)

*, /, div, mod y 2

XOR, +, - o 3

in, =, & lt& gt , & gt= , & lt=, & lt& gt4 (bajo)

2. Expresión

(1) Expresión aritmética: la expresión aritmética utiliza operadores aritméticos para conectar constantes, fórmulas para variables y funciones. El orden de cada operador en una expresión aritmética es: ()->function->*,/,div,mod->+,1

(2) Expresión booleana: Turbo Pascal proporciona el siguientes operaciones básicas para expresiones booleanas: operaciones lógicas y operaciones relacionales.

(3) La diferencia entre expresiones matemáticas y expresiones en lenguaje Pascal

Nota sobre expresiones matemáticas y expresiones Pascal

2a 2*a * no se puede omitir.

a \b a/b símbolo de división

a≠b a & lt; & gtb símbolo de desigualdad

a≤b a & lt;=b Menor o igual al símbolo.

3.1 Declaración de asignación

PASCAL tiene dos declaraciones que pueden cambiar el valor de una variable. La declaración de asignación es una de ellas (la otra es la declaración de lectura). La asignación, como su nombre indica, consiste en asignar un valor a una determinada cantidad. Se puede entender que las variables son equivalentes a contenedores de cosas, y el proceso de asignación es el proceso de poner cosas en el contenedor. El formato de la declaración de asignación es el siguiente:

Variable:= expresión;

Se deben tener en cuenta los siguientes puntos al escribir declaraciones de asignación:

1, asignación number ":= "

El número de asignación consta de dos caracteres y es un operador. Si separa estos dos caracteres, tendrán otros significados: ":" es el separador y "=" es el operador relacional, que determina si dos objetos son iguales. Los estudiantes que acaban de terminar de escribir un programa deben prestar especial atención a este punto.

Ejemplo: a, b: entero; - es una declaración. ":" es el separador entre tabla de variables y tipo de variable.

a = b - Esta es una expresión. Su valor es una cantidad booleana: verdadero o falso.

a:= 3; - es una declaración. Asigne el valor constante entero 3 a la variable entera a.

2. Primero se deben explicar las variables.

Las variables que aparecen en el lado izquierdo del número de asignación deben explicarse primero en la parte de descripción del encabezado del programa; de lo contrario, se producirá un error durante la compilación.

3. La expresión debe tener un valor claro.

La expresión que aparece a la derecha del número de la tarea debe ser evaluable. Es decir, tras la operación se puede obtener un valor concreto y claro.

Piénsalo, si ni siquiera conoces tu propio valor, ¿cómo puedes “dar” valor a los demás?

4. Los tipos de datos en ambos lados del número de asignación deben ser iguales o compatibles.

Sabemos que las variables y constantes en PASCAL tienen un atributo llamado "tipo de datos". Sólo aquellos usuarios con tipos de datos iguales o compatibles pueden asignarse valores entre sí.

¿Cómo entiendes esta frase? Por ejemplo, usamos tazas de té pequeñas para preparar té de Kung Fu y tazones de arroz para servir arroz. Si usas un tazón de arroz para hacer té de kung fu y usas una taza pequeña para servir arroz, será divertido e inviable. Volviendo a PASCAL, si la variable en el lado izquierdo del número de asignación es un número entero, entonces el valor de la expresión a la derecha también debe ser un número entero, si la variable a la izquierda del número de asignación es un tipo de carácter, entonces; el tipo de valor de la expresión de la derecha también debe ser un tipo de carácter... De lo contrario, se producirá un error. Este es el caso donde los tipos de datos son los mismos.

Para la compatibilidad de tipos de datos, también podemos usar un ejemplo para ayudar a comprender. Todos tomamos té de kung fu y una gran taza de té. Generalmente no hay problema si viertes té de Kung Fu en una taza de té grande, pero ¿qué pasa si viertes una taza grande de té en una taza de Kung Fu? Tal vez la taza pequeña no pueda contener el té en la taza grande y el té se "desbordará". Esta situación también ocurre en PASCAL. La compatibilidad de tipos puede ocurrir cuando el rango de valores de un tipo de datos contiene el rango de valores de otro tipo de datos. Tipos reales y enteros, tipos enteros, tipos de caracteres y sus respectivos tipos de sublímites... Si asignas valores enteros a variables reales y valores enteros de sublímites a variables enteras, nada saldrá mal pero si haces lo otro; De otro modo, se producirá un "desbordamiento" y se producirá un error.

Por lo tanto, al escribir una declaración de tarea, preste atención a si los tipos de ambos lados coinciden.

Ejemplo: Existen los siguientes pasos:

var a, b: entero; c: real; d: 0..100;

Iniciar

a:= 100;

b:= a;

{ - a los valores anteriores se les asigna el mismo tipo de datos}

d:= 100;

b:= d;

c:= b;

{ -

d:= b;

a:= c;

{ -Las dos declaraciones de asignación anteriores se desbordaron y provocaron un error en tiempo de compilación. }

Fin.

3.2 Declaración de lectura

La declaración de lectura, al igual que la declaración de asignación, puede cambiar el valor de la variable. A diferencia de las declaraciones de asignación, las declaraciones de lectura reciben valores del teclado o de un archivo para asignarlos a variables, mientras que las declaraciones de asignación se obtienen directamente de las declaraciones del programa. El formato de la declaración de lectura es el siguiente:

Leer (lista de nombres de variables);

Readln (lista de nombres de variables

readln

);

Declaración de lectura Es una de las declaraciones más utilizadas en programación. Hay varios puntos a tener en cuenta al usarlo:

1. Las variables escritas entre paréntesis deben indicarse de antemano en la descripción de la variable; las variables están separadas por ",";

Ejemplo:

var a, b: entero;

Leer (a, b);

2. Al recibir datos del teclado, preste atención a los diferentes delimitadores para diferentes tipos de datos. El llamado separador es la marca entre dos valores completos. También se puede entender que cuando la computadora lee datos del teclado, una vez que encuentra un delimitador, considera que los datos actuales han sido leídos y se pueden asignar a la variable correspondiente. Los delimitadores para varios tipos de datos son los siguientes:

Los tipos numéricos (incluidos los tipos enteros, los tipos de números reales y sus tipos de sublímites) utilizan espacios o retornos de carro como delimitadores;

Carácter tipos No se requiere delimitador (debido a que la longitud de los datos de caracteres es fija, solo hay uno);

Las cadenas están separadas por retornos de carro.

3. Preste atención a la diferencia entre lectura y lectura.

Ejemplo: Hay dos programas con las mismas variables como se muestra a continuación. Podemos comprender la diferencia entre lectura y lectura comparando las similitudes y diferencias en los resultados de ejecución de diferentes declaraciones de lectura.

Descripción de la variable var a, b, c, d: entero; resultado de la ejecución

a b c d

La sección 1 del programa se lee como (a);

readln(b, c);

Cambiar a (d);

1 2 3 6

Programa sección 2 readln(a);

Leer como (b, c);

Leer (d) 1 6 7 8

Introducir datos 1 2 3 4 5

6 7 8

Cuando se ejecuta el segmento del programa, la instrucción "read(a);" recibe el primer dato 1 y lo asigna a la variable a; luego ejecuta la segunda instrucción "readln(b, c); );", recibe 2 y 3 en la primera fila de datos y los asigna a las variables byc respectivamente. Al mismo tiempo, todos los demás datos del banco fueron bloqueados, es decir, declarados inválidos. Lo mismo se aplica a la ejecución del segmento 2 del programa.

Entonces podemos sacar la conclusión de que la declaración de lectura solo recibe datos. Después de que la declaración readln recibe los datos, también declara que los datos de todos los demás pares no son válidos.

4. La instrucción "leer" recibe un retorno de carro del teclado. Esta expresión se suele utilizar cuando se requiere una pausa. Por ejemplo, al generar, se usa para esperar a que el programador vea el resultado claramente.

3.3 Escribir una declaración

La declaración Write es la única declaración en Pascal que puede emitir el resultado de una operación y mostrarlo en la pantalla. El formato es el siguiente:

Escribir (escala de salida); {sin nueva línea después de la salida}

Writeln (escala de salida); {nueva línea después de la salida}

writeln{salida carácter de retorno de carro}

Hay algunos problemas menores a los que se debe prestar atención cuando se utilizan declaraciones de escritura.

1. La salida puede ser:

Variable. Muestra el valor de la variable. Al generar varias variables, sepárelas con ",".

Expresión. La salida es el valor de la expresión.

Sin cambios. Genera directamente el valor constante.

2. El papel de la limitación del ancho del campo en la salida de valores en diferentes formatos:

Ejemplo 1: salida de múltiples espacios.

Escribir (':n); el significado de la oración es generar el elemento de datos antes de los dos puntos, con un ancho de n caracteres. Si la longitud del elemento de datos es menor que n, el frente se rellena con espacios; si la longitud del elemento de datos es mayor que n, se genera la longitud real. Genera n espacios como arriba.

Ejemplo 2: Intervalo de elementos de datos.

Por ejemplo, para generar hasta cuatro dígitos de datos: escriba(x:5). Debe haber al menos un espacio entre los datos.

Ejemplo 3: Determinación del número de decimales en datos reales.

Cuando los datos reales no tienen restricciones de formato, se generan en forma de notación científica, que es diferente de nuestros hábitos generales de escritura. Si el ancho del campo es limitado, tendrá diferentes efectos:

var a:true;

start

a:= 15/8;

writeln(a); {Salida 1.875000000e+00}

wiiteln(A:0:2); {Salida de la parte entera de 1,88 según el número real de dígitos y conserva dos lugares decimales para la parte decimal. El último dígito se redondea. }

Writeln(a:0:0):{ La salida 2 solo genera la parte entera y la parte decimal se redondea}

Fin.

3. Las declaraciones "escritas" se utilizan generalmente para separar grupos de datos generando líneas en blanco en la pantalla cuando se generan varios grupos de datos.

4.1 Declaración IF

Las declaraciones condicionales se utilizan para responder a dos aspectos de las condiciones.

Por ejemplo, si hoy llueve, nos quedaremos en casa; en caso contrario (no lloverá), nos iremos de viaje.

Otro ejemplo: si se han obtenido los resultados de la búsqueda, imprima la respuesta; en caso contrario (aún no hay resultados), continúe la búsqueda.

El formato general de la sentencia IF es:

Condición IF

ENTONCES sentencia 1 {Respuesta y procesamiento cuando la condición es verdadera}

ELSE declaración 2; {Respuesta y procesamiento cuando la condición es falsa}

Tenga cuidado al usar declaraciones condicionales:

1. SI, ENTONCES y ELSE son parte de una declaración.

Por lo tanto, sólo puede tener un ";" como separador, colocado al final de la oración, especialmente antes de ELSE.

2. Si nuestro programa solo necesita manejar la situación cuando la condición es verdadera y no necesita manejar la situación cuando la condición es falsa, entonces la declaración IF omite la cláusula ELSE y el formato se convierte en:

Condición SI

Luego declaración 1; {respuesta y procesamiento cuando la condición es verdadera}

Por ejemplo, si el número a es mayor o igual a 0, genera su raíz cuadrada.

Si a & gt=0 entonces writeln(sqrt(a));

Para el ejemplo anterior, cuando la condición es falsa, no necesitamos manejarla, por lo que simplemente omitimos la cláusula ELSE.

3.Las declaraciones if se pueden anidar en varias capas. Para evitar malentendidos al anidar, puede usar inicio, fin y fin para encerrar la parte anidada. La cláusula Else generalmente coincide con la cláusula if más cercana:

Condición IF

Entonces comencemos.

Si es la condición 1, entonces...otro...;

Fin

En caso contrario comienza

Si es la condición 2, Entonces. ..otro...;

Fin;

Ejemplo 1. Ingrese dos números A y B, y genere el número mayor.

tt plan;

var a, b: entero;

Inicio

Escribir ('Ingrese a, b:') ;

readln(a, b);

Si a & gt entonces escribe(a)

si no, escribeln(b);

Fin.

4.2 Declaración de caso

Las declaraciones de situación son aplicables a múltiples situaciones en respuesta a una condición.

Formato:

Expresión de formato

Número de referencia 1: declaración 1;

Nº 2: declaración 2;

......

Número de referencia n: declaración n;

Else declaración n+1

Fin;

Caso de uso Hay varios puntos a tener en cuenta al hacer declaraciones:

1. La etiqueta del caso final correspondiente y la oración están separadas por ":" no hay separador entre else y la declaración.

2. La etiqueta debe ser una constante del mismo tipo que la expresión.

Ejemplo 2: Los precios unitarios (yuanes/kg) de la gasolina en una gasolinera automática A, B y C son 1,50, 1,35, 1,65, 438+08 respectivamente, y también proporcionan "autoautoservicio". relleno" o "auxiliar" Para el nivel de servicio, los usuarios pueden obtener 5% o 65438. Escriba un programa donde el usuario ingrese la cantidad de aceite, el tipo de gasolina y el tipo de servicio (f-automático, m-autoservicio, e-asistido) y luego calcule el pago.

Programa PCA se 1;

Definir variables

Petróleo, ayuda: carbono;

kg, total: real;

Inicio

Escribir ('Ingrese la cantidad en kilogramos (kg)):'); readln (kilogramos);

Escribir ('Qué tipo de gasolina (a, b, c):'); readln (oil);

wirte ('Qué tipo de servicio (f, m, e):'); Aceite de concha

' a ': Total: = 1,50 * kg

b ': Total: = 1,35 * kg

' c ' :Total: = 1,18 * kg;

else writeln('¡Error de entrada!')

Fin;

{——————Tipo de gasolina pendiente}

Ayuda de caso

f ':

' m ':Total:=Total*(1-0.05);

e ':Total :=Total*(1-0.10);

else writeln('¡Error de entrada!')

Fin;

{—— ————Procesando tipo de servicio}

writeln

writeln('El total es', total: 10:2);

Fin.

3. Varias etiquetas pueden corresponder a la misma frase.

4. Una declaración puede contener varias declaraciones, pero deben estar entre corchetes (fin de comienzo...).

Las declaraciones 5.case también se pueden anidar.

Ejemplo 3: lea el año y el mes desde el teclado y genere el número de días de un mes.

Programa pcase2

Definir variables

Año, mes, día: entero

runnian: booleano

< p; >Inicio

Escribir('Ingrese año y mes:'); readln(año, mes);

Mes del caso

1, 3, 5, 7 , 8, 10, 12: día: = 31;

4, 6, 9, 11: día: = 30; {————Manejo de casos de 31 días y más de 30 días}

2:Inicio

runnian:=(año módulo 400=0) o ((año módulo 4=0) y (año módulo 100<>0));

Año de ejecución del caso

true:day:= 28;

false:day:= 29;

Fin;

Fin; ————Lo anterior trata de la situación en febrero: 28 días en años bisiestos y 29 días en años normales}

Fin;

Fin.