Kooli informaatika perioodiline tabel

(Juhtkaardid)
(Pühendatud keemiliste elementide perioodilise tabeli rahvusvahelisele aastale)
(Viimased täiendused on tehtud 8. aprillil 2019. Täienduste nimekiri on kohe lõike all)

Kooli informaatika perioodiline tabel
(Mendelejevi lill, Allikas)

Mäletan, et möödusime pardist. Need olid kolm tundi korraga: geograafia, loodusõpetus ja vene keel. Loodusõpetuse tunnis uuriti parti kui parti, millised tiivad tal on, mis jalad tal on, kuidas ta ujub jne. Geograafiatunnis uuriti sedasama parti kui maakera elanikku: oli vaja kaardil näidata, kus ta elab ja kus mitte. Vene keeles õpetas Serafima Petrovna meile kirjutama “u-t-k-a” ja lugema Bremist midagi partide kohta. Möödaminnes teatas ta meile, et saksa keeles on part selline ja prantsuse keeles selline. Ma arvan, et tollal nimetati seda "keeruliseks meetodiks". Üldiselt tuli kõik välja "mööduvalt".

Veniamin Kaverin, Kaks kaptenit

Ülaltoodud tsitaadis näitas Veniamin Kaverin meisterlikult keeruka õppemeetodi puudujääke, kuid mõnel (võib-olla üsna harva) juhul on selle meetodi elemendid õigustatud. Üks selline juhtum on D.I. Mendelejevi perioodilisustabel kooli informaatikatundides. Tüüpiliste toimingute tarkvaralise automatiseerimise ülesanne perioodilisuse tabeliga on keemiat õppima asunud koolilastele selge ja jaguneb paljudeks tüüpilisteks keemilisteks probleemideks. Samas võimaldab see ülesanne arvutiteaduse raames lihtsal kujul demonstreerida graafilisele programmeerimisele omistatavat juhtimiskaartide meetodit, mida selle sõna laiemas tähenduses mõistetakse graafiliste elementide abil programmeerimisena.

(8. aprill 2019 tehtud täiendusi:
Lisa 1: Kuidas keemiakalkulaator töötab
Lisa 2: filtrite ülesannete näited)

Alustame põhiülesandega. Kõige lihtsamal juhul tuleks perioodilisustabel kuvada ekraanil akna kujul, kus igas lahtris on elemendi keemiline tähistus: H - vesinik, He - heelium jne. Kui hiirekursor osutab lahtrile, kuvatakse meie vormi spetsiaalsel väljal elemendi tähistus ja selle number. Kui kasutaja vajutab LMB-d, näidatakse selle valitud elemendi nimetust ja numbrit vormi teisel väljal.

Kooli informaatika perioodiline tabel

Probleemi saab lahendada mis tahes universaalse keele abil. Võtame lihtsa vana Delpi-7, mis on arusaadav peaaegu kõigile. Kuid enne PL-s programmeerimist joonistagem kaks pilti, näiteks Photoshopis. Kõigepealt joonistame perioodilisustabeli sellisel kujul, nagu soovime seda programmis näha. Salvestage tulemus graafilisse faili table01.bmp.

Kooli informaatika perioodiline tabel

Teise joonise jaoks kasutame esimest. Täidame järjestikku kogu graafikast puhastatud tabeli lahtrid ainulaadsete värvidega RGB-värvimudelis. R ja G on alati 0 ja B=1 vesiniku, 2 heeliumi jne puhul. Sellest joonisest saab meie kontrollkaart, mille salvestame faili nimega table2.bmp.

Kooli informaatika perioodiline tabel

Graafilise programmeerimise esimene etapp Photoshopis on lõppenud. Liigume edasi graafilise GUI programmeerimise juurde Delpi-7 IDE-s. Selleks avage uus projekt, kus põhivormil asetame dialooginupu (tabelDlg), milles toimub töö tabeliga. Järgmisena töötame vormiga tabelDlg.

Asetage klassi komponent vormile Kujutis... Saame Image1. Pange tähele, et üldiselt genereeritakse suurte projektide puhul vormi nimed automaatselt PiltNKus N võib ulatuda mitmekümneni või rohkemgi – see pole parim programmeerimisstiil ja tuleks panna tähendusrikkamad nimed. Aga meie väikeses projektis, kus N ei ületa 2, võite jätta selle loodud kujul.

Vara juurde Pilt1.Pilt faili üles laadida table01.bmp. Meie loome Image2 ja laadige sinna meie kontrollkaart table2.bmp. Sellisel juhul muudame faili väikeseks ja kasutajale nähtamatuks, nagu on näidatud vormi alumises vasakus nurgas. Lisame täiendavaid juhtelemente, mille eesmärk on ilmne. Delpi-7 IDE graafilise GUI programmeerimise teine ​​etapp on lõpetatud.

Kooli informaatika perioodiline tabel

Liigume edasi kolmanda etapi juurde - koodi kirjutamine Delpi-7 IDE-s. Moodul koosneb ainult viiest sündmuste käitlejast: vormi loomine (VormLoo), kursori liikumine Image1 (Image1MouseMove), klõpsates lahtril LMB-d (Pilt1 Klõpsake) ja välju dialoogist, kasutades nuppe OK (OKBtnClick) või Tühista (TühistaBtnKlikki). Nende töötlejate päised genereeritakse standardsel viisil IDE abil.

Mooduli lähtekood:

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.

Meie versioonis võtsime tabeli 104 elemendist (konstant suurus). Ilmselt saab seda suurust suurendada. Elementide tähistused (keemilised sümbolid) kirjutatakse massiivi Tabel Sümbolid. Lähtekoodi kompaktsuse huvides tundub siiski soovitatav kirjutada nende tähiste jada stringikonstantidena Perioodiline tabelStr1..., Perioodiline tabelStr4nii et vormi loomisel hajutab programm ise need tähised massiivi elementide vahel laiali. Iga elemendi tähistus koosneb ühest või kahest ladina tähest, kusjuures esimene täht on suur ja teine ​​(kui on) väiketäht. Seda lihtsat reeglit rakendatakse massiivi laadimisel. Seega saab märgete jada kirjutada kokkuvõtlikult ilma tühikuteta. Jada jagamine neljaks osaks (konstandid Perioodiline tabelStr1..., Perioodiline tabelStr4) on tingitud lähtekoodi lugemise lihtsusest, kuna Liiga pikk rida ei pruugi ekraanile täielikult mahtuda.

Kui hiirekursor liigub üle Image1 käitleja Image1MouseMove see sündmus määrab kontrollkaardi piksli sinise värvikomponendi väärtuse Image2 kursori praeguste koordinaatide jaoks. Ehituse järgi Image2 see väärtus on võrdne elemendi numbriga, kui kursor on lahtri sees; null, kui see on piiril, ja 255 muudel juhtudel. Ülejäänud toimingud, mida programm teeb, on triviaalsed ega vaja selgitusi.

Lisaks ülalmainitud stilistilistele programmeerimisvõtetele tasub tähele panna kommentaaristiili. Rangelt võttes on käsitletav kood nii väike ja lihtne, et kommentaarid ei tundu eriti vajalikud. Need lisati aga ka metoodilistel põhjustel – lühikood võimaldab selgemalt teha mõningaid üldisi järeldusi. Esitatud koodis deklareeritakse üks klass (TtableDlg). Selle klassi meetodeid saab vahetada ja see ei mõjuta kuidagi programmi toimimist, kuid võib mõjutada selle loetavust. Näiteks kujutage ette järjestust:

OKBtnClick, Image1MouseMove, FormCreate, Image1Click, CancelBtnClick.

See ei pruugi olla väga märgatav, kuid seda on veidi raskem lugeda ja mõista. Kui lõigus ei ole viis, vaid kümneid kordi rohkem meetodeid täitmine neil on hoopis teine ​​järjekord kui klassikirjeldustes, siis kaos ainult suureneb. Seega, kuigi rangelt tõestada on raske ja võib-olla isegi võimatu, võib loota, et lisakorra sisseviimine parandab koodi loetavust. Seda täiendavat järjestust hõlbustab mitme seotud ülesandeid täitva meetodi loogiline rühmitamine. Igale rühmale tuleks anda pealkiri, näiteks:

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

Need pealkirjad tuleks kopeerida mooduli algusesse ja vormindada sisukorrana. Mõnel juhul üsna pikkade moodulite puhul pakuvad sellised sisukorrad täiendavaid navigeerimisvõimalusi. Samamoodi tasub ühe meetodi, protseduuri või funktsiooni pikas kehas esiteks märkida selle keha lõpp:

end; // FormCreate

ja teiseks, programmi sulgudega hargnenud lausetes märgi algus - lõpp lause, millele sulgev sulg viitab:

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

Grupipäiste ja meetodi kehade otste esiletõstmiseks saate lisada ridu, mis on pikemad kui enamik lauseid ja koosnevad näiteks vastavalt märkidest "=" ja "_".
Jällegi peame tegema reservatsiooni: meie näide on liiga lihtne. Ja kui meetodi kood ei mahu ühele ekraanile, võib olla raske mõista kuut järjestikust koodi muutmist. Mõnes vanas kompilaatoris, näiteks Pascal 8000 operatsioonisüsteemi IBM 360/370 jaoks, trükiti selline teenuseveerg loendis vasakule

B5
…
E5

See tähendas, et rea E5 sulgev sulg vastas rea B5 avasulule.

Muidugi on programmeerimisstiil väga vastuoluline teema, nii et siin avaldatud ideid tuleks võtta kui midagi muud kui mõtlemisainet. Kahel üsna kogenud programmeerijal, kes on aastatepikkuse tööga välja kujunenud ja erinevate stiilidega harjunud, võib olla väga raske kokkuleppele jõuda. Teine asi on programmeerima õppiva õpilasega, kes pole veel jõudnud oma stiili leida. Arvan, et sellisel juhul peaks õpetaja oma õpilastele edastama vähemalt sellise lihtsa, kuid neile mitte ilmse idee, et programmi edukus sõltub suuresti sellest, millises stiilis selle lähtekood on kirjutatud. Õpilane ei pruugi järgida soovitatud stiili, kuid lase tal vähemalt mõelda, kas on vaja “lisa” toiminguid lähtekoodi kujunduse parandamiseks.

Tulles tagasi meie perioodilise tabeli põhiprobleemi juurde: edasine areng võib kulgeda erinevates suundades. Üks juhistest on viitamiseks: kui hõljutate hiirekursorit tabeli lahtri kohal, kuvatakse teabeaken, mis sisaldab täiendavat teavet määratud elemendi kohta. Edasiarenduseks on filtrid. Näiteks, olenevalt paigaldusest sisaldab teabeaken ainult: kõige olulisemat füüsikalist ja keemilist teavet, teavet avastamise ajaloo kohta, teavet leviku kohta looduses, olulisemate ühendite loendit (mis sisaldab seda elementi), füsioloogilised omadused, võõrkeelne nimi jne e. Meenutades Kaverini “parti”, millega käesolev artikkel algab, võib öelda, et selle programmi arendusega saame tervikliku loodusteaduste õppekompleksi: lisaks arvutile loodusteadused, füüsika ja keemia – bioloogia, majandusgeograafia, teaduse ajalugu ja isegi võõrkeeled.

Kuid kohalik andmebaas pole piir. Programm loob loomulikult Interneti-ühenduse. Kui valite elemendi, aktiveeritakse link ja veebibrauseri aknas avaneb selle elemendi kohta Wikipedia artikkel. Wikipedia, nagu teate, ei ole autoriteetne allikas. Saate määrata linke autoriteetsetele allikatele, näiteks keemia entsüklopeediale, TSB-le, abstraktsetele ajakirjadele, tellida selle elemendi otsingumootoritesse päringuid jne. See. Õpilased saavad täita lihtsaid, kuid sisukaid ülesandeid DBMS-i ja Interneti teemadel.

Lisaks üksikute elementide päringutele saate luua funktsioone, mis näiteks märgivad tabelis teatud kriteeriumidele vastavad lahtrid erinevate värvidega. Näiteks metallid ja mittemetallid. Või rakud, mis kohaliku keemiatehase poolt veekogudesse heidetakse.

Samuti saate rakendada märkmiku korraldaja funktsioone. Näiteks tõstke tabelis esile eksamil sisalduvad elemendid. Seejärel tõstke esile elemendid, mida õpilane eksamiks valmistudes õppis/korras.

Ja siin on näiteks üks tüüpilisi koolikeemia probleeme:

Antud 10 g kriiti. Kui palju vesinikkloriidhapet tuleb kogu selle kriidi lahustamiseks võtta?

Selle probleemi lahendamiseks on vaja keemia üles kirjutada. Reaktsioon ja koefitsiendid sellesse paigutades arvutada kaltsiumkarbonaadi ja vesinikkloriidi molekulmassid, seejärel koostada ja lahendada vahekord. Meie põhiprogrammil põhinev kalkulaator oskab arvutada ja lahendada. Tõsi, peate siiski arvestama, et hapet tuleb võtta mõistlikus koguses ja mõistlikus kontsentratsioonis, kuid see on keemia, mitte arvutiteadus.
Lisa 1: Kuidas keemiakalkulaator töötabAnalüüsime kalkulaatori tööd ülaltoodud kriidi ja “hodgepodge” probleemi näitel. Alustame reaktsiooniga:

CaCO3 + 2HCl = CaCl2 + H2O

Sellest näeme, et vajame järgmiste elementide aatommassi: kaltsium (Ca), süsinik (C), hapnik (O), vesinik (H) ja kloor (Cl). Lihtsamal juhul saame need kaalud kirjutada ühemõõtmelisse massiivi, mis on määratletud kui

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

kus massiivi indeks vastab elemendi numbrile. Vormi vabast ruumist lähemalt tabelDlg pane kaks välja. Esimesele väljale kirjutatakse algselt: "Antakse esimene reaktiiv", teisel - "Teine reaktiiv on x leidmiseks". Tähistame väljad reaktiiv 1, reaktiiv 2 vastavalt. Teised programmi täiendused on selged järgmisest kalkulaatori näitest.

Kirjutame arvuti klaviatuuril: 10 g.Põllule kiri reaktiiv 1 muudatused: "Esimesele reaktiivile antakse 10 g." Nüüd sisestame selle reaktiivi valemi ning kalkulaator arvutab ja näitab selle molekulmassi sisestamisel.

Klõpsake tabeli lahtris Ca sümboliga LMB-d. Kirje väljal reaktiiv 1 muudatused: "Esimene reaktiiv Ca 40.078 antud 10 g."

Klõpsake tabeli lahtril LMB, mille väljal on sümbol C. Inscription reaktiiv 1 muudatused: "Esimene reaktiiv CaC 52.089 antud 10 g." Need. Kalkulaator liitis kaltsiumi ja süsiniku aatommassid.

Klõpsake tabeli lahtril LMB, mille väljal on sümbol O. Inscription reaktiiv 1 muudatused: "Esimene reaktiiv CaCO 68.088 antud 10 g." Kalkulaator lisas summale hapniku aatommassi.

Klõpsake tabeli lahtril LMB, mille väljal on sümbol O. Inscription reaktiiv 1 muudatused: "Esimene reaktiiv CaCO2 84.087 antud 10 g." Kalkulaator lisas summale veel kord hapniku aatommassi.

Klõpsake tabeli lahtril LMB, mille väljal on sümbol O. Inscription reaktiiv 1 muudatused: "Esimene reaktiiv CaCO3 100.086 antud 10 g." Kalkulaator lisas summale taas hapniku aatommassi.

Vajutage arvuti klaviatuuril sisestusklahvi. Esimese reagendi sisestamine on lõpetatud ja lülitub põllule reaktiiv 2. Pange tähele, et selles näites pakume minimaalset versiooni. Soovi korral saab hõlpsasti organiseerida sama tüüpi aatomite kordajaid, et näiteks kroomi valemi (K2Cr2O7) sisestamisel ei peaks hapnikuelemendil seitse korda järjest klõpsama.

Klõpsake tabeli lahtril LMB, mille väljal on sümbol H. Inscription reaktiiv 2 muudatused: "Teine reaktiiv H 1.008 leia x."

Klõpsake tabeli lahtris sümboliga Cl nuppu LMB. Kirje väljal reaktiiv 2 muudatused: "Teine reagent HCl 36.458 leia x." Kalkulaator liitis vesiniku ja kloori aatommassid. Ülaltoodud reaktsioonivõrrandis eelneb vesinikkloriidi koefitsient 2. Seetõttu klõpsake väljal LMB reaktiiv 2. Molekulmass kahekordistub (kahekordsel vajutamisel kolmekordistub jne). Kirje väljal reaktiiv 2 muudatused: "Teine reagent 2HCl 72.916 leia x."

Vajutage arvuti klaviatuuril sisestusklahvi. Teise reaktiivi sisestamine on lõpetatud ja kalkulaator leiab proportsioonist x

Kooli informaatika perioodiline tabel

See oli meil vaja leida.

Märkus 1. Saadud proportsiooni tähendus: lahustamiseks 100.086 Da kriit vajab 72.916 Da hapet ja 10 g kriidi lahustamiseks vajate x hapet.

Märkus 2. Sarnaste probleemide kogud:

Khomchenko I. G., Ülesannete ja harjutuste kogumik keemias 2009 (8.-11. klass).
Khomchenko G. P., Khomchenko I. G., Keemiaprobleemide kogumik ülikoolidesse kandideerijatele, 2019.

Märkus 3. Ülesande lihtsustamiseks saate lihtsustada valemi sisestamist esialgses versioonis ja lisada lihtsalt valemirea lõppu elemendi sümbol. Siis on kaltsiumkarbonaadi valem järgmine:
CaCOOO
Aga keemiaõpetajale selline salvestus tõenäoliselt ei meeldi. Õige sisestuse tegemine pole keeruline - selleks peate lisama massiivi:

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

kus indeks on keemilise elemendi number ja selle indeksi väärtus on aatomite arv (esialgu kõik massiivi elemendid nullitakse). Arvesse tuleks võtta keemias omaks võetud järjekorda, milles aatomid valemis on kirjutatud. Näiteks vähestele inimestele meeldib ka O3CaC. Anname vastutuse kasutajale. Massiivi koostamine:

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

kus kirjutame üles keemilise elemendi numbri vastavalt valemis esinemise indeksile. Aatomi lisamine CurrNo valemisse:

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

Valemi kirjutamine reale:

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;

Märkus 4. Mõistlik on pakkuda võimalus reaktiivi valemit alternatiivselt sisestada klaviatuurilt. Sel juhul peate rakendama lihtsa parseri.

Väärib märkimist, et:

Tänapäeval on tabelist mitusada versiooni ja teadlased pakuvad pidevalt uusi võimalusi. (Wikipedia)

Õpilased saavad näidata oma leidlikkust selles suunas, rakendades mõnda juba pakutud võimalust või proovida teha oma originaal. Võib tunduda, et see on informaatikatundide jaoks kõige vähem kasulik suund. Kuid käesolevas artiklis rakendatud perioodilise tabeli kujul ei pruugi mõned õpilased näha kontrollkaartide eeliseid standardnuppe kasutades alternatiivse lahenduse ees. TBupp. Tabeli spiraalne kuju (kus lahtrid on erineva kujuga) näitab selgemalt siin pakutud lahenduse eeliseid.

Kooli informaatika perioodiline tabel
(Theodore Benfey alternatiivne elementide süsteem, Allikas)

Lisagem ka, et mitmeid praegu olemasolevaid perioodilise tabeli arvutiprogramme on kirjeldatud hiljuti Habré's avaldatud siit.

Lisa 2: filtrite ülesannete näitedFiltrite abil saate lahendada näiteks järgmisi ülesandeid:

1) Valige tabelisse kõik keskajal tuntud elemendid.

2) Määrake kindlaks kõik perioodilise seaduse avastamise ajal teadaolevad elemendid.

3) Määrake seitse elementi, mida alkeemikud pidasid metallideks.

4) Valige kõik elemendid, mis on normaaltingimustes (n.s.) gaasilises olekus.

5) Valige kõik elemendid, mis on vedelas olekus nr.

6) Valige kõik elemendid, mis on tahkes olekus nr.

7) Valige kõik elemendid, mis võivad tavatingimustes pikka aega õhuga kokku puutuda ilma märgatavate muutusteta.

8) Valige kõik metallid, mis lahustuvad vesinikkloriidhappes.

9) Valige kõik metallid, mis lahustuvad väävelhappes nr.

10) Valige kõik metallid, mis lahustuvad kuumutamisel väävelhappes.

11) Valige kõik lämmastikhappes lahustuvad metallid.

12) Eraldage kõik metallid, mis ümbritseva keskkonna tingimustes ägedalt reageerivad veega.

13) Valige kõik metallid.

14) Tehke kindlaks looduses laialt levinud elemendid.

15) Määrake looduses leiduvad elemendid vabas olekus.

16) Tehke kindlaks elemendid, mis mängivad inimese ja looma kehas kõige olulisemat rolli.

17) Valige igapäevaelus laialdaselt kasutatavad elemendid (vabas vormis või kombinatsioonides).

18) Tehke kindlaks elemendid, millega on kõige ohtlikum töötada ning mis nõuavad erimeetmeid ja kaitsevahendeid.

19) Selgitage välja elemendid, mis vabal kujul või ühenditena kujutavad endast keskkonda suurimat ohtu.

20) Valige väärismetallid.

21) Tehke kindlaks elemendid, mis on kallimad kui väärismetallid.

Märkused

1) Mõistlik on pakkuda mitu filtrit. Näiteks kui lülitate sisse filtri probleemi 1 (kõik keskajal tuntud elemendid) ja 20 (väärismetallid) lahendamiseks, tõstetakse esile keskajal tuntud väärismetallidega rakud (näiteks värvi järgi) ( näiteks pallaadiumit ei tõsteta esile , avati 1803).

2) Mõttekas on jälgida, et mitmed filtrid töötaksid sellises režiimis, et iga filter valib oma värviga lahtrid, kuid ei eemalda täielikult teise filtri valikut (osa lahtrist ühte värvi, osa teist). Siis tulevad eelmise näite puhul nähtavale keskajal avastatud hulgade ja väärismetallide ristumiskoha elemendid, samuti ainult esimesse ja ainult teise hulka kuuluvad elemendid. Need. keskajal tundmatud väärismetallid ja keskajal tuntud elemendid, kuid mitte väärismetallid.

3) Pärast filtri paigaldamist on mõttekas tagada saadud tulemustega muu töö võimalus. Näiteks, olles valinud keskajal tuntud elemendid, klõpsab kasutaja valitud elemendil LMB-d ja suunatakse seda elementi käsitlevasse Vikipeedia artiklisse.

4) Mõistlik on anda kasutajale võimalus valiku tühistamiseks, klõpsates valitud tabeli lahtril LMB. Näiteks juba vaadatud üksuste eemaldamiseks.

5) Mõttekas on jälgida, et valitud lahtrite nimekiri salvestataks faili ja et selline fail laaditakse automaatse lahtrite valikuga. See annab kasutajale võimaluse tööst pausi teha.

Kasutasime staatilist etteantud kontrollkaarti, kuid on palju olulisi ülesandeid, mille puhul saab kasutada dünaamilisi juhtkaarte, mis programmi töö käigus muutuvad. Näitena võiks tuua graafiredaktori, milles kasutaja näitab hiirt tippude asukohti aknas ja tõmbab nende vahele servad. Tipu või serva kustutamiseks peab kasutaja sellele osutama. Aga kui ringiga märgitud tipule on üsna lihtne osutada, siis peenikese joonega tõmmatud servale on keerulisem osutada. Siin on abiks kontrollkaart, kus tipud ja servad asuvad nähtaval joonisel laiemalt.

Selle kompleksse treeningu meetodiga seotud huvitav kõrvalküsimus on: kas see meetod võib olla kasulik AI treenimisel?

Allikas: www.habr.com

Lisa kommentaar