Çàî÷íîå äèñòàíöèîííîå îáðàçîâàíèå ñ ïîëó÷åíèåì ãîñóäàðñòâåííîãî äèïëîìà ÷åðåç Internet










Ïîëó÷èòü èíôîðìàöèþ î ïîñòóïëåíèè
 
Ãëàâíàÿ Íîâîñòè Êàðòà ñàéòà Ôîòîàëüáîì Ãîñòåâàÿ êíèãà Êîíòàêòû

 

Óïðàæíåíèå 4

Ñîçäàäèì ïðîãðàììó, îïðåäåëÿþùóþ, ÿâëÿåòñÿ ëè ââåäåííîå ñëîâî ïåðåâåðòûøåì. Ïåðåâåðòûøåì íàçûâàåòñÿ ñëîâî, êîòîðîå îäèíàêîâî ÷èòàåòñÿ êàê ñëåâà íàïðàâî, òàê è ñïðàâà íàëåâî, íàïðèìåð: øàëàø, êàçàê. Êàê âèäíî èç îïðåäåëåíèÿ, äëÿ âûÿñíåíèÿ, ÿâëÿåòñÿ ëè ñëîâî ïåðåâåðòûøåì, íåîáõîäèìî ñðàâíèâàòü 1-é è ïîñëåäíèé ñèìâîë â ñòðîêå, 2-é è ïðåäïîñëåäíèé, 3-é è ïðåäïðåäïîñëåäíèé ñèìâîë, è ò. ä. äî ñåðåäèíû ñëîâà. Åñëè â ïðîöåññå ñðàâíåíèÿ áóäåò óñòàíîâëåíî îòëè÷èå ñðàâíèâàåìûõ ñèìâîëîâ, ò. å. âûÿñíÿåòñÿ, ÷òî ñëîâî ÷èòàåòñÿ ñëåâà íàïðàâî èíà÷å, ÷åì ñïðàâà íàëåâî, çíà÷èò ìîæíî ñäåëàòü âûâîä, ÷òî ýòî ñëîâî íå ÿâëÿåòñÿ ïåðåâåðòûøåì. Åñëè â ïðîöåññå ñðàâíåíèÿ íå áóäåò âûÿâëåíî îòëè÷èÿ ñðàâíèâàåìûõ ñèìâîëîâ, çíà÷èò ýòî ñëîâî – ïåðåâåðòûø.

Ââåäåì ñëåäóþùèå ïåðåìåííûå: äëÿ õðàíåíèÿ ñëîâ – Word òèïà string ñ ìàêñèìàëüíûì ðàçìåðîì ñëîâ 30 ñèìâîëîâ è ïåðåìåííóþ I öåëîãî òèïà, óêàçûâàþùóþ íîìåð ïîçèöèè ñðàâíèâàåìîãî ñèìâîëà îò íà÷àëà ñòðîêè. Çàãîëîâîê ïðîãðàììû ìîæíî áóäåò çàïèñàòü ñëåäóþùèì îáðàçîì:

program Perev_Word:

var I : byte:

Word : string[30];

Ïðåæäå âñåãî, ïðîãðàììà äîëæíà âûâîäèòü ñîîáùåíèå î ââîäå ñòðîêè è ñ÷èòûâàòü çíà÷åíèå ñòðîêè â ïåðåìåííóþ Word. Ýòî ìîæíî çàïèñàòü ñëåäóþùèì îáðàçîì:

Write('Ââåäèòå ñëîâî ');

Readln(Word):

Ïîâòîðÿþùóþñÿ îïåðàöèþ ñðàâíåíèÿ ïåðâîãî è ïîñëåäíåãî ñèìâîëà â ñòðîêå, çàòåì âòîðîãî è ïðåäïîñëåäíåãî è ò. ä., çàïèøåì ñ ïîìîùüþ öèêëà for, ïàðàìåòð êîòîðîãî, èçìåíÿÿñü îò 1 äî ñåðåäèíû ñòðîêè, áóäåò óêàçûâàòü íîìåð ïîçèöèè ñèìâîëà îò íà÷àëà ñòðîêè. Êîíå÷íîå çíà÷åíèå ïàðàìåòðà öèêëà óñòàíîâèì ðàâíûì ñåðåäèíå ñëîâà, öåëî÷èñëåííîå çíà÷åíèå êîòîðîãî âû÷èñëèì, èñïîëüçóÿ ñòàíäàðòíûå ôóíêöèè Trunc è Length. Çàãîëîâîê îïåðàòîðà öèêëà çàïèøåì ñëåäóþùèì îáðàçîì:

for I:=l to Trunc(Length(Word)/2) do

 òåëå öèêëà çàïèøåì îïåðàòîð ñðàâíåíèÿ ñîîòâåòñòâóþùèõ ñèìâîëîâ:

if Word[I]<>Word[Length(Word)-I+l].

Åñëè ðåçóëüòàò ñðàâíåíèÿ ñîîòâåòñòâóþùèõ î÷åðåäíûõ ñèìâîëîâ ïðèìåò çíà÷åíèå True, òî äàííàÿ ñòðîêà íå ÿâëÿåòñÿ ïåðåâåðòûøåì, è äàëüíåéøåå ñðàâíåíèå íå èìååò ñìûñëà. Âûâåäåì íà ýêðàí ñîîáùåíèå, ÷òî äàííîå ñëîâî íå ÿâëÿåòñÿ ïåðåâåðòûøåì, è çàâåðøèì öèêë ïðîöåäóðîé exit, êîòîðàÿ ïåðåäàåò óïðàâëåíèå â êîíåö ïðîãðàììû.

Åñëè ðåçóëüòàò ñðàâíåíèÿ ñîîòâåòñòâóþùèõ î÷åðåäíûõ ñèìâîëîâ èìååò çíà÷åíèå False, òî ýòî ñâèäåòåëüñòâóåò î òîì, ÷òî äàííûå ñèìâîëû îäèíàêîâû, íî ñëåäóåò ïðîäîëæèòü ñðàâíåíèå îñòàâøèõñÿ. Ïàðàìåòð öèêëà óâåëè÷èâàåòñÿ íà 1, ïðîâåðÿåòñÿ óñëîâèå I <=Trunc(Length(Word)/2) è åñëè îíî ñîáëþäàåòñÿ, òî òåëî öèêëà âûïîëíÿåòñÿ åùå ðàç.

Åñëè óñëîâèå I <=Trunc(Length(Word)/2) íå âûïîëíÿåòñÿ, òî öèêë çàâåðøàåòñÿ, è óïðàâëåíèå ïåðåäàåòñÿ íà îïåðàòîð Writeln('Ïåðåâåðòûø'). Ïðîãðàììà çàâåðøàåò ðàáîòó. Ïîëíûé òåêñò ïðîãðàììû ìîæíî ïðåäñòàâèòü òàêèì îáðàçîì:

program Perev_Word; {ßâëÿåòñÿ ëè ââåäåííîå ñëîâî ïåðåâåðòûøåì?}

var I : byte;

Word : string[30];

begin

Write('Ââåäèòå ñëîâî ');

Readln(Word);

for I:=l to Trunc(Length(Word)/2) do {Ïðîâåðÿåì ñèìâîëû ïîî÷åðåäíî îò íà÷àëà äî ñåðåäèíû ñëîâà}

begin

if Word[I]<>Word[Length(Word)-I+l] then {Åñëè ñîîòâåòñòâóþùèå ñèìâîëû íå îäèíàêîâû} begin Writeln Ñ Íåïåðåâåðòûø');

exit {Âûõîä èç öèêëà è çàâåðøåíèå ïðîãðàììû, äàëüøå íå èìååò ñìûñëà ñðàâíèâàòü }

end;

end;

Writeln ('Ïåðåâåðòûø');

end.

Çàïóñòèòå èíòåãðèðîâàííóþ ñðåäó ïðîãðàììèðîâàíèÿ. Ââåäèòå òåêñò ïðîãðàììû Perev_Word è çàïèøèòå ôàéë íà äèñê ïîä ñîîòâåòñòâóþùèì èìåíåì, à çàòåì îòêîìïèëèðóéòå åãî. Ïîñëå óñïåøíîãî çàâåðøåíèÿ êîìïèëÿöèè ïðîâåðüòå ðàáîòó ïðîãðàììû ñ îòëàäêîé â ïîøàãîâîì ðåæèìå, îòñëåæèâàÿ çíà÷åíèÿ ïåðåìåííûõ Word, I, Word[I], Word[length(Word)-I+l].



 
     
   
 


Ïðèãëàøàåì ïðèíÿòü ó÷àñòèå â êðóãëîì ñòîëå!
ïîäðîáíåå   >>>
 

Èíñòèòóò Ìåíåäæìåíòà, Ýêîíîìèêè è Èííîâàöèé íà÷èíàåò íàáîð íà êóðñû ïîâûøåíèÿ êâàëèôèêàöèè!
ïîäðîáíåå   >>>
 

Óâàæåìûå ñòóäåíòû ÀÍÎ ÂÏÎ ÈÌÝèÈ!
ïîäðîáíåå   >>>
 

Íà÷èíàåòñÿ íàáîð íà êóðñû ïîâûøåíèÿ êâàëèôèêàöèè!
ïîäðîáíåå   >>>
 

Ïðèãëàøàåì ïðèíÿòü ó÷àñòèå â êîíôåðåíöèÿõ!
ïîäðîáíåå   >>>
 


âñå íîâîñòè...

 


Ðàññûëêè Subscribe.Ru
Ñîâðåìåííîå îáðàçîâàíèå
Ïîäïèñàòüñÿ ïèñüìîì