Tabla periódica de informática escolar.

(Tarjetas de control)
(Dedicado al Año Internacional de la Tabla Periódica de Elementos Químicos)
(Las últimas incorporaciones se realizaron el 8 de abril de 2019. La lista de incorporaciones se encuentra inmediatamente debajo del corte)

Tabla periódica de informática escolar.
(La flor de Mendeleev, fuente)

Recuerdo que pasamos el pato. Eran tres lecciones a la vez: geografía, ciencias naturales y ruso. En una lección de ciencias, se estudió un pato como pato, qué alas tiene, qué patas, cómo nada, etc. En una lección de geografía, se estudió el mismo pato como habitante del globo: era necesario mostrar en un mapa dónde vive y dónde no. En ruso, Serafima Petrovna nos enseñó a escribir “u-t-k-a” y a leer algo sobre patos de Brem. De paso nos informó que en alemán el pato es así y en francés así. Creo que en aquel entonces se llamaba el “método complejo”. En general, todo salió “de pasada”.

Benjamin Caverin, dos capitanes

En la cita anterior, Veniamin Kaverin mostró magistralmente las deficiencias del complejo método de enseñanza, sin embargo, en algunos casos (quizás bastante raros), los elementos de este método están justificados. Un ejemplo de ello es la tabla periódica de D. I. Mendeleev en las clases de informática de la escuela. La tarea de la automatización por software de acciones típicas con la tabla periódica es clara para los escolares que han comenzado a estudiar química y se divide en muchos problemas químicos típicos. Al mismo tiempo, en el marco de la informática, esta tarea nos permite demostrar de forma sencilla el método de las tarjetas de control, que puede atribuirse a la programación gráfica, entendida en el sentido amplio de la palabra como programación mediante elementos gráficos.

(Adiciones realizadas el 8 de abril de 2019:
Anexo 1: Cómo funciona la calculadora de química
Apéndice 2: ejemplos de tareas para filtros)

Comencemos con la tarea básica. En el caso más simple, la tabla periódica debe mostrarse en la pantalla en forma de ventana, donde en cada celda habrá una designación química del elemento: H - hidrógeno, He - helio, etc. Si el cursor del mouse apunta a una celda, la designación del elemento y su número se muestran en un campo especial de nuestro formulario. Si el usuario presiona LMB, la designación y el número de este elemento seleccionado se indicarán en otro campo del formulario.

Tabla periódica de informática escolar.

El problema se puede resolver utilizando cualquier lenguaje universal. Tomaremos el antiguo y sencillo Delpi-7, que es comprensible para casi todo el mundo. Pero antes de programar en PL, hagamos dos dibujos, por ejemplo, en Photoshop. Primero, dibujemos la tabla periódica en la forma que queremos verla en el programa. Guardar el resultado en un archivo gráfico. tabla01.bmp.

Tabla periódica de informática escolar.

Para el segundo dibujo utilizamos el primero. Llenamos secuencialmente las celdas de la tabla, limpiadas de todos los gráficos, con colores únicos en el modelo de color RGB. R y G siempre serán 0, y B=1 para hidrógeno, 2 para helio, etc. Este dibujo será nuestra tarjeta de control, que guardaremos en un archivo llamado tabla2.bmp.

Tabla periódica de informática escolar.

Se completa la primera etapa de programación gráfica en Photoshop. Pasemos a la programación de GUI gráfica en Delpi-7 IDE. Para hacer esto, abra un nuevo proyecto, donde en el formulario principal colocamos un botón de diálogo (mesaDlg), en el que se trabajará con la mesa. A continuación trabajamos con el formulario. mesaDlg.

Coloque un componente de clase en el formulario. Timage. Nosotros obtenemos Image1. Tenga en cuenta que, en general, para proyectos grandes, los nombres generados automáticamente del formulario ImagenNDonde N puede llegar a varias docenas o más; este no es el mejor estilo de programación y se deben dar nombres más significativos. Pero en nuestro pequeño proyecto, donde N no excederá de 2, puedes dejarlo como se generó.

a la propiedad Imagen1.Imagen subir archivo tabla01.bmp. Nosotros creamos Image2 y cargar allí nuestra tarjeta de control tabla2.bmp. En este caso, hacemos que el archivo sea pequeño e invisible para el usuario, como se muestra en la esquina inferior izquierda del formulario. Agregamos elementos de control adicionales, cuyo propósito es obvio. Se completa la segunda etapa de programación de GUI gráfica en Delpi-7 IDE.

Tabla periódica de informática escolar.

Pasemos a la tercera etapa: escribir código en Delpi-7 IDE. El módulo consta de sólo cinco controladores de eventos: creación de formulario (Formar), movimiento del cursor Image1 (Imagen1RatónMover), haciendo clic en LMB en una celda (Imagen1Clic) y salga del cuadro de diálogo usando los botones Aceptar (OKBtnHaga clic) O cancelar (CancelarBtnClick). Los encabezados de estos controladores se generan de forma estándar utilizando el IDE.

Código fuente del módulo:

unit tableUnit;
// Периодическая таблица химических элементов Д.И.Менделеева
//
// third112
// https://habr.com/ru/users/third112/
//
// Оглавление
// 1) создание формы
// 2) работа с таблицей: указание и выбор
// 3) выход из диалога

interface

uses Windows, SysUtils, Classes, Graphics, Forms, Controls, StdCtrls, 
  Buttons, ExtCtrls;

const
 size = 104; // число элементов
 
type
 TtableDlg = class(TForm)
    OKBtn: TButton;
    CancelBtn: TButton;
    Bevel1: TBevel;
    Image1: TImage;  //таблица химических элементов
    Label1: TLabel;
    Image2: TImage;  //управляющая карта
    Label2: TLabel;
    Edit1: TEdit;
    procedure FormCreate(Sender: TObject); // создание формы
    procedure Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);                        // указание клетки
    procedure Image1Click(Sender: TObject); // выбор клетки
    procedure OKBtnClick(Sender: TObject);  // OK
    procedure CancelBtnClick(Sender: TObject); // Cancel
  private
    { Private declarations }
    TableSymbols : array [1..size] of string [2]; // массив обозначений элементов
  public
    { Public declarations }
    selectedElement : string; // выбранный элемент
    currNo : integer;         // текущий номер элемента
  end;

var
  tableDlg: TtableDlg;

implementation

{$R *.dfm}

const
PeriodicTableStr1=
'HHeLiBeBCNOFNeNaMgAlSiPSClArKCaScTiVCrMnFeCoNiCuZnGaGeAsSeBrKrRbSrYZrNbMoTcRuRhPdAgCdInSnSbTeIXeCsBaLa';
PeriodicTableStr2='CePrNdPmSmEuGdTbDyHoErTmYbLu';
PeriodicTableStr3='HfTaWReOsIrPtAuHgTlPbBiPoAtRnFrRaAc';
PeriodicTableStr4='ThPaUNpPuAmCmBkCfEsFmMdNoLrKu ';

// создание формы  ==================================================

procedure TtableDlg.FormCreate(Sender: TObject);
// создание формы
var
  s : string;
  i,j : integer;
begin
  currNo := 0;
// инициализация массива обозначений элементов:
  s := PeriodicTableStr1+ PeriodicTableStr2+PeriodicTableStr3+PeriodicTableStr4;
  j := 1;
  for i :=1 to size do
   begin
     TableSymbols [i] := s[j];
     inc (j);
     if s [j] in ['a'..'z'] then
      begin
        TableSymbols [i] := TableSymbols [i]+ s [j];
        inc (j);
      end; // if s [j] in
   end; // for i :=1
end; // FormCreate ____________________________________________________

// работа с таблицей: указание и выбор =========================================

procedure TtableDlg.Image1MouseMove(Sender: TObject; Shift: TShiftState;
  X, Y: Integer);
// указание клетки
var
  sl : integer;
begin
  sl := GetBValue(Image2.Canvas.Pixels [x,y]);
  if sl in [1..size] then
   begin
    Label1.Caption := intToStr (sl)+ ' '+TableSymbols [sl];
    currNo := sl;
   end
  else
    Label1.Caption := 'Select element:';
end; // Image1MouseMove   ____________________________________________________

procedure TtableDlg.Image1Click(Sender: TObject);
begin
  if currNo <> 0 then
   begin
    selectedElement := TableSymbols [currNo];
    Label2.Caption := intToStr (currNo)+ ' '+selectedElement+ ' selected';
    Edit1.Text := selectedElement;
   end;
end; // Image1Click  ____________________________________________________

// выход из диалога  ==================================================

procedure TtableDlg.OKBtnClick(Sender: TObject);
begin
    selectedElement := Edit1.Text;
    hide;
end;  // OKBtnClick ____________________________________________________

procedure TtableDlg.CancelBtnClick(Sender: TObject);
begin
  hide;
end;  // CancelBtnClick ____________________________________________________

end.

En nuestra versión, tomamos una tabla de 104 elementos (constante tamaño). Evidentemente este tamaño se puede aumentar. Las designaciones de elementos (símbolos químicos) se escriben en una matriz. TablaSímbolos. Sin embargo, por razones de compacidad del código fuente, parece aconsejable escribir la secuencia de estas notaciones en forma de constantes de cadena. Tabla PeriódicaStr1..., Tabla PeriódicaStr4de modo que cuando se crea el formulario, el propio programa distribuye estas designaciones entre los elementos de la matriz. La designación de cada elemento consta de una o dos letras latinas, siendo la primera letra mayúscula y la segunda (si corresponde) minúscula. Esta simple regla se implementa al cargar una matriz. Así, la secuencia de notaciones se puede escribir de forma concisa y sin espacios. Dividir una secuencia en cuatro partes (constantes Tabla PeriódicaStr1..., Tabla PeriódicaStr4) se debe a consideraciones de facilidad de lectura del código fuente, porque Es posible que una línea demasiado larga no quepa completamente en la pantalla.

Cuando el cursor del ratón se mueve sobre el Image1 manipulador Imagen1RatónMover este evento determina el valor del componente de color azul del píxel de la tarjeta de control Image2 para las coordenadas actuales del cursor. Por construcción Image2 este valor es igual al número del elemento si el cursor está dentro de la celda; cero si se encuentra en la frontera, y 255 en el resto de casos. El resto de acciones realizadas por el programa son triviales y no requieren explicación.

Además de las técnicas de programación estilística mencionadas anteriormente, cabe destacar el estilo de los comentarios. Estrictamente hablando, el código discutido es tan pequeño y simple que los comentarios no parecen particularmente necesarios. Sin embargo, se añadieron también por razones metodológicas: el código corto nos permite sacar algunas conclusiones generales con mayor claridad. En el código presentado se declara una clase (TtableDlg). Los métodos de esta clase se pueden intercambiar y esto no afectará de ninguna manera el funcionamiento del programa, pero puede afectar su legibilidad. Por ejemplo, imagina la secuencia:

OKBtnClick, Image1MouseMove, FormCreate, Image1Click, CancelBtnClick.

Puede que no se note mucho, pero será un poco más difícil de leer y comprender. Si no hay cinco, sino decenas de veces más métodos en la sección implementación tienen un orden completamente diferente al de las descripciones de clases, entonces el caos solo aumentará. Por lo tanto, aunque es difícil de probar estrictamente y puede incluso ser imposible, se puede esperar que la introducción de un orden adicional mejore la legibilidad del código. Este orden adicional se ve facilitado por la agrupación lógica de varios métodos que realizan tareas relacionadas. A cada grupo se le debe dar un título, por ejemplo:

// работа с таблицей: указание и выбор

Estos títulos deben copiarse al principio del módulo y formatearse como una tabla de contenido. En algunos casos de módulos bastante largos, dichas tablas de contenido proporcionan opciones de navegación adicionales. De igual forma, en el cuerpo largo de un método, procedimiento o función, vale, en primer lugar, marcar el final de este cuerpo:

end; // FormCreate

y, en segundo lugar, en declaraciones ramificadas con corchetes de programa que comienzan - final, marque la declaración a la que se refiere el corchete de cierre:

      end; // if s [j] in
   end; // for i :=1
end; // FormCreate

Para resaltar los encabezados de grupo y los finales de los cuerpos de los métodos, puede agregar líneas que sean más largas que la mayoría de las declaraciones y que consten, por ejemplo, de los caracteres "=" y "_", respectivamente.
Nuevamente debemos hacer una reserva: nuestro ejemplo es demasiado simple. Y cuando el código de un método no cabe en una pantalla, puede resultar complicado comprender seis finales consecutivos para realizar cambios de código. En algunos compiladores antiguos, por ejemplo Pascal 8000 para OS IBM 360/370, una columna de servicio como esta estaba impresa a la izquierda del listado.

B5
…
E5

Esto significaba que el paréntesis de cierre de la línea E5 correspondía al paréntesis de apertura de la línea B5.

Por supuesto, el estilo de programación es un tema muy controvertido, por lo que las ideas expresadas aquí no deben tomarse más que como materia de reflexión. Puede resultar muy difícil llegar a un acuerdo para dos programadores bastante experimentados, que han desarrollado y acostumbrado a diferentes estilos durante muchos años de trabajo. Es diferente para un estudiante que está aprendiendo a programar y que aún no ha tenido tiempo de encontrar su propio estilo. Creo que en este caso el profesor debería al menos transmitir a sus alumnos una idea tan simple, pero no obvia, de que el éxito de un programa depende en gran medida del estilo en el que esté escrito su código fuente. Puede que el alumno no siga el estilo recomendado, pero déjele al menos pensar en la necesidad de acciones “extra” para mejorar el diseño del código fuente.

Volviendo a nuestro problema básico sobre la tabla periódica: un mayor desarrollo puede ir en diferentes direcciones. Una de las instrucciones es de referencia: cuando pasa el cursor del mouse sobre una celda de la tabla, aparece una ventana de información que contiene información adicional sobre el elemento especificado. Un mayor desarrollo son los filtros. Por ejemplo, dependiendo de la instalación, la ventana de información sólo contendrá: la información física y química más importante, información sobre la historia del descubrimiento, información sobre la distribución en la naturaleza, una lista de los compuestos más importantes (que incluye este elemento), propiedades fisiológicas, nombre en lengua extranjera, etc. e. Recordando el “pato” de Kaverin con el que comienza este artículo, podemos decir que con este desarrollo del programa obtendremos un completo complejo formativo en ciencias naturales: además de informática ciencia, física y química: biología, geografía económica, historia de la ciencia e incluso lenguas extranjeras.

Pero una base de datos local no es el límite. El programa se conecta naturalmente a Internet. Cuando selecciona un elemento, el enlace se activa y el artículo de Wikipedia sobre este elemento se abre en la ventana del navegador web. Wikipedia, como sabes, no es una fuente autorizada. Puede establecer enlaces a fuentes autorizadas, por ejemplo, enciclopedia química, TSB, revistas de resúmenes, solicitar consultas en motores de búsqueda para este elemento, etc. Eso. Los estudiantes podrán completar tareas simples pero significativas sobre DBMS y temas de Internet.

Además de las consultas sobre un elemento individual, puede crear una funcionalidad que, por ejemplo, marcará las celdas de la tabla que cumplen ciertos criterios con diferentes colores. Por ejemplo, metales y no metales. O células que una planta química local arroja a cuerpos de agua.

También puedes implementar las funciones de un organizador de cuaderno. Por ejemplo, resalte en la tabla los elementos que se incluyen en el examen. Luego resalte los elementos estudiados/repetidos por el estudiante en preparación para el examen.

Y aquí, por ejemplo, uno de los típicos problemas de química escolar:

Se le dan 10 g de tiza. ¿Cuánto ácido clorhídrico hay que tomar para disolver toda esta tiza?

Para solucionar este problema es necesario anotar la química. reacción y colocando los coeficientes en ella, calcule los pesos moleculares del carbonato de calcio y el cloruro de hidrógeno, luego componga y resuelva la proporción. Una calculadora basada en nuestro programa básico puede calcular y resolver. Es cierto que aún deberá tener en cuenta que el ácido debe tomarse en un exceso razonable y en una concentración razonable, pero esto es química, no informática.
Anexo 1: Cómo funciona la calculadora de químicaAnalicemos el funcionamiento de la calculadora usando el ejemplo del problema anterior de tiza y "mezcolanza". Empecemos con la reacción:

CaCO3 + 2HCl = CaCl2 + H2O

De esto vemos que necesitaremos los pesos atómicos de los siguientes elementos: calcio (Ca), carbono (C), oxígeno (O), hidrógeno (H) y cloro (Cl). En el caso más simple, podemos escribir estos pesos en una matriz unidimensional definida como

AtomicMass : array [1..size] of real;

donde el índice de la matriz corresponde al número de elemento. Más sobre el espacio libre del formulario mesaDlg Pon dos campos. En el primer campo está escrito inicialmente: "Se da el primer reactivo", en el segundo - "El segundo reactivo es encontrar x". Denotemos los campos. reactivo1, reactivo2 respectivamente. Otras adiciones al programa quedarán claras en el siguiente ejemplo de la calculadora.

Escribimos en el teclado de la computadora: 10 g Inscripción en el campo reactivo1 cambia: “El primer reactivo recibe 10 g”. Ahora ingresamos la fórmula de este reactivo y la calculadora calculará y mostrará su peso molecular a medida que lo ingrese.

Haga clic en LMB en la celda de la tabla con el símbolo Ca. Inscripción en el campo reactivo1 cambios: "Primer reactivo Ca 40.078 dado 10 g".

Haga clic en LMB en la celda de la tabla con el símbolo C. Inscripción en el campo reactivo1 cambios: "Primer reactivo CaC 52.089 dado 10 g". Aquellos. La calculadora sumó los pesos atómicos del calcio y el carbono.

Haga clic en LMB en la celda de la tabla con el símbolo O. Inscripción en el campo reactivo1 cambios: "Primer reactivo CaCO 68.088 dado 10 g". La calculadora sumó el peso atómico del oxígeno a la suma.

Haga clic en LMB en la celda de la tabla con el símbolo O. Inscripción en el campo reactivo1 cambios: "Primer reactivo CaCO2 84.087 dado 10 g". La calculadora volvió a sumar el peso atómico del oxígeno a la suma.

Haga clic en LMB en la celda de la tabla con el símbolo O. Inscripción en el campo reactivo1 cambios: "Primer reactivo CaCO3 100.086 dado 10 g". La calculadora volvió a sumar el peso atómico del oxígeno a la suma.

Presione Enter en el teclado de su computadora. Se completa la introducción del primer reactivo y se pasa al campo. reactivo2. Tenga en cuenta que en este ejemplo proporcionamos una versión mínima. Si lo desea, puede organizar fácilmente multiplicadores de átomos del mismo tipo, de modo que, por ejemplo, no tenga que hacer clic siete veces seguidas en la celda de oxígeno al ingresar la fórmula del cromo (K2Cr2O7).

Haga clic en LMB en la celda de la tabla con el símbolo H. Inscripción en el campo reactivo2 cambios: "Segundo reactivo H 1.008 encontrar x".

Haga clic en LMB en la celda de la tabla con el símbolo Cl. Inscripción en el campo reactivo2 cambios: "Segundo reactivo HCl 36.458 encuentre x". La calculadora sumó los pesos atómicos del hidrógeno y el cloro. En la ecuación de reacción anterior, el cloruro de hidrógeno está precedido por un coeficiente de 2. Por lo tanto, haga clic en LMB en el campo reactivo2. El peso molecular se duplica (se triplica cuando se presiona dos veces, etc.). Inscripción en el campo reactivo2 cambios: "Segundo reactivo 2HCl 72.916 encuentre x".

Presione Enter en el teclado de su computadora. Se completa la entrada del segundo reactivo y la calculadora encuentra x a partir de la proporción

Tabla periódica de informática escolar.

Eso es lo que necesitábamos encontrar.

Nota 1. El significado de la proporción resultante: por disolución 100.086 Da la tiza requiere 72.916 Da de ácido y para disolver 10 g de tiza necesitas x ácido.

Nota 2. Colecciones de problemas similares:

Khomchenko I. G., Colección de problemas y ejercicios de química 2009 (grados 8-11).
Khomchenko G. P., Khomchenko I. G., Colección de problemas de química para solicitantes de universidades, 2019.

Nota 3. Para simplificar la tarea, puede simplificar la entrada de la fórmula en la versión inicial y simplemente agregar el símbolo del elemento al final de la línea de la fórmula. Entonces la fórmula del carbonato de calcio será:
cacooo
Pero es poco probable que a un profesor de química le guste una grabación así. No es difícil realizar la entrada correcta; para ello es necesario agregar una matriz:

formula : array [1..size] of integer;

donde el índice es el número del elemento químico y el valor de este índice es el número de átomos (inicialmente todos los elementos de la matriz se ponen a cero). Se debe tener en cuenta el orden en que se escriben los átomos en una fórmula, tal como se adopta en química. Por ejemplo, a pocas personas tampoco les gustará O3CaC. Pasemos la responsabilidad al usuario. Haciendo una matriz:

 formulaOrder : array [1..size] of integer; // можно взять покороче

donde anotamos el número del elemento químico según el índice de su aparición en la fórmula. Añadiendo un átomo actualNo en la fórmula:

if formula [currNo]=0 then //этот атом встретился первый раз
 begin
 orderIndex := orderIndex+1;//в начале ввода формулы orderIndex=0
 formulaOrder [orderIndex] :=  currNo;
 end;
formula [currNo]:=formula [currNo]+1;

Escribiendo la fórmula en una línea:

s := ''; // пустая строка для формулы
for i:=1 to  orderIndex do // для всех хим.символов в формуле 
 begin
 s:=s+TableSymbols [ formulaOrder[i]];// добавляем хим.символ
 if formula [formulaOrder[i]]<>1 then //добавляем кол-во атомов
  s:=s+ intToStr(formula [formulaOrder[i]]);
 end;

Nota 4. Tiene sentido ofrecer la posibilidad de ingresar alternativamente la fórmula del reactivo desde el teclado. En este caso, necesitarás implementar un analizador simple.

Cabe resaltar que:

Hoy en día existen varios cientos de versiones de la tabla y los científicos ofrecen constantemente nuevas opciones. (Wikipedia)

Los estudiantes pueden mostrar su ingenio en esta dirección implementando una de las opciones ya propuestas o intentar hacer la suya original. Puede parecer que esta es la dirección menos útil para las lecciones de informática. Sin embargo, en la forma de la tabla periódica implementada en este artículo, es posible que algunos estudiantes no vean las ventajas particulares de las tarjetas de control sobre la solución alternativa que utiliza botones estándar. Botón. La forma de espiral de la mesa (donde las celdas tienen diferentes formas) demostrará más claramente las ventajas de la solución propuesta aquí.

Tabla periódica de informática escolar.
(Sistema alternativo de elementos de Theodore Benfey, fuente)

Añadamos también que una serie de programas informáticos actualmente existentes para la tabla periódica se describen en el artículo publicado recientemente en Habré. статье.

Apéndice 2: ejemplos de tareas para filtrosUtilizando filtros podrás resolver, por ejemplo, las siguientes tareas:

1) Seleccionar en la tabla todos los elementos conocidos en la Edad Media.

2) Identificar todos los elementos conocidos en el momento del descubrimiento de la Ley Periódica.

3) Identificar siete elementos que los alquimistas consideraban metales.

4) Seleccionar todos los elementos que se encuentran en estado gaseoso en condiciones normales (n.s.).

5) Seleccionar todos los elementos que se encuentran en estado líquido en el no.

6) Seleccione todos los elementos que estén en estado sólido en el n.

7) Seleccionar todos los elementos que puedan estar expuestos al aire durante mucho tiempo sin cambios perceptibles en condiciones normales.

8) Seleccione todos los metales que se disuelvan en ácido clorhídrico.

9) Seleccione todos los metales que se disuelvan en ácido sulfúrico en el n.

10) Seleccione todos los metales que se disuelvan en ácido sulfúrico cuando se calientan.

11) Seleccione todos los metales que se disuelvan en ácido nítrico.

12) Aislar todos los metales que reaccionan violentamente con el agua en condiciones ambientales.

13) Seleccione todos los metales.

14) Identificar elementos que están muy extendidos en la naturaleza.

15) Identificar elementos que se encuentran en la naturaleza en estado libre.

16) Identificar los elementos que desempeñan el papel más importante en el cuerpo humano y animal.

17) Seleccionar elementos que se utilicen ampliamente en la vida cotidiana (en forma libre o en combinaciones).

18) Identificar los elementos con los que es más peligroso trabajar y que requieren medidas y equipos de protección especiales.

19) Identificar los elementos que, en forma libre o en forma de compuestos, suponen una mayor amenaza para el medio ambiente.

20) Seleccione metales preciosos.

21) Identificar elementos que son más caros que los metales preciosos.

Notas

1) Tiene sentido proporcionar múltiples filtros. Por ejemplo, si activa un filtro para resolver el problema 1 (todos los elementos conocidos en la Edad Media) y 20 (metales preciosos), las celdas con metales preciosos conocidos en la Edad Media se resaltarán (por ejemplo, por color) ( por ejemplo, no se destacará el paladio (inaugurado en 1803).

2) Tiene sentido asegurarse de que varios filtros funcionen de tal modo que cada filtro seleccione celdas con su propio color, pero no elimine por completo la selección de otro filtro (parte de la celda en un color, parte en otro). Entonces, en el caso del ejemplo anterior, serán visibles elementos de la intersección de conjuntos descubiertos en la Edad Media y metales preciosos, así como elementos pertenecientes únicamente al primero y únicamente al segundo conjunto. Aquellos. metales preciosos desconocidos en la Edad Media, y elementos conocidos en la Edad Media pero no metales preciosos.

3) Tiene sentido después de aplicar el filtro asegurar la posibilidad de realizar otros trabajos con los resultados obtenidos. Por ejemplo, al seleccionar elementos conocidos en la Edad Media, el usuario hace clic en LMB en el elemento seleccionado y accede al artículo de Wikipedia sobre este elemento.

4) Tiene sentido brindarle al usuario la posibilidad de anular la selección haciendo clic en LMB en la celda de la tabla seleccionada. Por ejemplo, para eliminar elementos ya vistos.

5) Tiene sentido asegurarse de que la lista de celdas seleccionadas se guarde en un archivo y que dicho archivo esté cargado con la selección automática de celdas. Esto le dará al usuario la oportunidad de tomar un descanso del trabajo.

Usamos un mapa de control estático predeterminado, pero hay muchas tareas importantes en las que se pueden usar mapas de control dinámicos que cambian a medida que se ejecuta el programa. Un ejemplo sería un editor de gráficos, en el que el usuario utiliza el ratón para indicar las posiciones de los vértices en una ventana y dibujar bordes entre ellos. Para eliminar un vértice o arista, el usuario debe señalarlo. Pero si es bastante fácil señalar un vértice marcado con un círculo, entonces será más difícil señalar un borde dibujado con una línea delgada. Un mapa de control ayudará aquí, donde los vértices y aristas ocupan vecindades más amplias que en la figura visible.

Una pregunta secundaria interesante relacionada con este método de entrenamiento complejo es: ¿puede este método ser útil para entrenar IA?

Fuente: habr.com

Añadir un comentario