Update PR4
This commit is contained in:
parent
964cb24dc1
commit
19034a1b78
@ -6,8 +6,8 @@
|
|||||||
- [PR 3](#pr-3)
|
- [PR 3](#pr-3)
|
||||||
- [17. Esquemas de recorrido y búsqueda](#17-esquemas-de-recorrido-y-búsqueda)
|
- [17. Esquemas de recorrido y búsqueda](#17-esquemas-de-recorrido-y-búsqueda)
|
||||||
- [17.1. Aprocimación intuitiva](#171-aprocimación-intuitiva)
|
- [17.1. Aprocimación intuitiva](#171-aprocimación-intuitiva)
|
||||||
- [17.1.1. Ejemplo 1](#1711-ejemplo-1)
|
- [17.1.1. Ejemplo temperatura media](#1711-ejemplo-temperatura-media)
|
||||||
- [17.1.2. Ejemplo 1](#1712-ejemplo-1)
|
- [17.1.2. Ejemplo](#1712-ejemplo)
|
||||||
- [17.2. Esquema de recorrido](#172-esquema-de-recorrido)
|
- [17.2. Esquema de recorrido](#172-esquema-de-recorrido)
|
||||||
- [17.3. Esquema de búsqueda](#173-esquema-de-búsqueda)
|
- [17.3. Esquema de búsqueda](#173-esquema-de-búsqueda)
|
||||||
- [17.3.1. Ejemplo](#1731-ejemplo)
|
- [17.3.1. Ejemplo](#1731-ejemplo)
|
||||||
@ -26,9 +26,9 @@ Un esquema es una especie de plantilla que nos permite solucionar un tipo de pro
|
|||||||
La idea es que, en lugar de ir a ciegas, sigamos un esquema de recorrido o búsqueda que nos permita ir avanzando de manera sistemática y eficiente. Por ejemplo, si tenemos que recorrer una matriz, podemos hacerlo por filas o por columnas, o si tenemos que buscar un elemento en una lista, podemos hacerlo de manera secuencial o binaria.
|
La idea es que, en lugar de ir a ciegas, sigamos un esquema de recorrido o búsqueda que nos permita ir avanzando de manera sistemática y eficiente. Por ejemplo, si tenemos que recorrer una matriz, podemos hacerlo por filas o por columnas, o si tenemos que buscar un elemento en una lista, podemos hacerlo de manera secuencial o binaria.
|
||||||
|
|
||||||
|
|
||||||
#### 17.1.1. Ejemplo 1
|
#### 17.1.1. Ejemplo temperatura media
|
||||||
|
|
||||||
Vamos a calular la temperatura media de todo el año suponiendo que vamos leyendo por el canal de entrada las temperaturas medias de cada día:
|
Vamos a calcular la temperatura media de todo el año suponiendo que vamos leyendo por el canal de entrada las temperaturas medias de cada día:
|
||||||
|
|
||||||
```alg
|
```alg
|
||||||
algorithm averageTemp
|
algorithm averageTemp
|
||||||
@ -76,15 +76,78 @@ int main(int argc, char** argv) {
|
|||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
#### 17.1.2. Ejemplo 1
|
#### 17.1.2. Ejemplo
|
||||||
|
|
||||||
|
Cargamos los datos de una tabla de recaudaciones de una sala de cine a partir de lo leído por el canal de entrada estándar.
|
||||||
|
|
||||||
|
```alg
|
||||||
|
const
|
||||||
|
MAX_THEATERS: integer = 20;
|
||||||
|
END_SEQ: real = -1.0;
|
||||||
|
end const
|
||||||
|
|
||||||
|
type
|
||||||
|
tTheater = record
|
||||||
|
collect: vector[MAX_THEATERS] real;
|
||||||
|
numTheaters: integer;
|
||||||
|
end record
|
||||||
|
end type
|
||||||
|
|
||||||
|
action fillTable(inout movieTheater:tTheater);
|
||||||
|
|
||||||
|
var
|
||||||
|
i: integer;
|
||||||
|
temp: real;
|
||||||
|
end var
|
||||||
|
|
||||||
|
temp:= readReal(); {We read the first value}
|
||||||
|
movieTheater.numTheaters:= 0;
|
||||||
|
|
||||||
|
while temp ≠ END_SEQ do
|
||||||
|
movieTheater.numTheaters:= movieTheater.numTheaters + 1;
|
||||||
|
movieTheater.collect[movieTheater.numTheaters]:= temp;
|
||||||
|
temp:= readReal();
|
||||||
|
end while
|
||||||
|
|
||||||
|
end action
|
||||||
|
```
|
||||||
|
|
||||||
|
```c
|
||||||
|
#include <stdio.h>
|
||||||
|
#define END_SEQ -1
|
||||||
|
#define MAX_THEATERS 20
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
float collect[MAX_THEATERS];
|
||||||
|
int numTheaters;
|
||||||
|
} tTheater;
|
||||||
|
|
||||||
|
void fillTable(tTheater *movieTheater) {
|
||||||
|
/* var definition */
|
||||||
|
int i;
|
||||||
|
float temp;
|
||||||
|
|
||||||
|
/* table initialization */
|
||||||
|
temp = 0;
|
||||||
|
movieTheater->numTheaters = 0;
|
||||||
|
scanf("%f", &temp); /* read the first value */
|
||||||
|
|
||||||
|
/* iteration while the read number is not -1 */
|
||||||
|
while (temp != END_SEQ) {
|
||||||
|
/* Save the read number in the table */
|
||||||
|
movieTheater->collect[movieTheater->numTheaters] = temp;
|
||||||
|
movieTheater->numTheaters = movieTheater->numTheaters + 1;
|
||||||
|
scanf("%f", &temp);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
### 17.2. Esquema de recorrido
|
### 17.2. Esquema de recorrido
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
### 17.3. Esquema de búsqueda
|
### 17.3. Esquema de búsqueda
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user