}
return(t);/*ôóíêöèÿ âîçâðàùàåò óêàçàòåëü íà ñïèñîê ñïèñêîâ*/
íà÷àëî
f:=p
t:=new rec2
t:=t1
f<>NULL íåò
äà
t1.p1:=f.p1
t1.p2:=f.p2
f:=f.next
t1.next:=new rec1
q:=t1.next
q.p1:=f.p1
q.p2:=f.p2
(q.p1<>1)&(q.p2<>1)
q.next:=new rec1 t1.link:=new rec2
q:=q.next t1:=t1.link
((q.p1<>1)&(q.p2<>1))or(f<>NULL)
íåò
return(t)
êîíåö
3. ÇÀÊËÞ×ÅÍÈÅ
 ðåçóëüòàòå ïðîäåëàííîé ðàáîòû ìíîþ áûëè äîñòèãíóòû ñëåäóþþùèå öåëè:
- îçíàêîìèëàñü è èçó÷èëà íåïðîöåäóðíûé ÿçûê ïðîãðàììèðîâàíèÿ Íîðìà, ïðåäíàçíà÷åííûé äëÿ çàïèñè ÷èñëåííûõ ìåòîäîâ ðåøåíèÿ çàäà÷ ìàòåìàòè÷åñêîé ôèçèêè ðàçíîñòíûìè ìåòîäàìè;
- èçó÷èëà ñòðóêòóðó òðàíñëÿòîðà ñ ÿçûêà ïðîãðàììèðîâàíèÿ Íîðìà;
- îçíàêîìèëàñü ñ ìåòîäàìè ëåêñè÷åñêîãî àíàëèçà;
- èçó÷èëà ñòðóêòóðó ëåêñè÷åñêîãî àíàëèçàòîðà;
- ðàçðàáîòàëà ñòðóêòóðó äàííûõ ñâîåé ÷àñòè çàäàíèÿ äëÿ ðåàëèçàöèè ëåêñè÷åñêîãî àíàëèçàòîðà;
-íàïèñàëà ôóíêöèþ, íà âõîä êîòîðîé ïîñòóïàåò ñïèñîê ëåêñåì, à íà âûõîäå ïîëó÷àåì ñïèñîê ñïèñêîâ. Ýëåìåíòîì ýòîãî ñïèñêà ñïèñêîâ ÿâëÿåòñÿ ñïèñîê ëåêñåì, êîòîðûé ïðåäñòàâëÿåò ñîáîé îäíî ïðåäëîæåíèå ïðîãðàììû, íàïèñàííîé íà Íîðìå, îêàí÷èâàþùååñÿ òî÷êîé. Ò.å. ýòà ôóíêöèÿ “ðåæåò” ïîñòóïàþùèé íà âõîä ñïèñîê ëåêñåì ïî òî÷êàì, à íà âûõîäå ïîëó÷àåì ñïèñîê ïðåäëîæåíèé, êàæäîå èç êîòîðûõ çàêàí÷èâàåòñÿ òî÷êîé è ïðåäñòàâëÿåòñÿ ñïèñêîì ëåêñåì.
Ïðîãðàììà íàõîäèòñÿ íà ñòàäèè ðàçðàáîòêè. Çàâåðøåíèå ðàáîòû ïëàíèðóåòñÿ â ñëåäóþùåì ñåìåñòðå. Çàäàíèå íà ÓÈÐ è ÊÏ âûïîëíèëà ïîëíîñòüþ.
Ñïèñîê ëèòåðàòóðû:
À.Í. Àíäðèàíîâ, Ê.Í. Åôèìêèí, È.Á. Çàäûõàéëî, Í.Â. Ïîääåðþãèíà “ßçûê Íîðìà”
À.Í. Àíäðèàíîâ, Ê.Í. Åôèìêèí, È.Á. Çàäûõàéëî “Íåïðîöåäóðíûé ÿçûê Íîðìà è ìåòîäû åãî ðåàëèçàöèè”
À.Á. Áóãåðÿ “Ðåàëèçàöèÿ ìàòåìàòè÷åñêèõ ôóíêöèé ÿçûêà Íîðìà äëÿ ðàñïðåäåëåííûõ âûñèñëèòåëüíûõ ñèñòåì”
Ïðèëîæåíèå 1.
#include<stdio.h>
#include<alloc.h>
#include<process.h>
struct spis
{ int p1,p2;
struct spis *next;} rec1;
struct spspis
{int p1,p2;
struct spspis *link;
struct spis *next;} rec2;
struct spis *f,*q,*r;
struct spspis *t1,*t;
extern struct spspis *(tochka(struct spis*));
struct spspis *tochka(p)
struct spis *p;
{
f=p;
t=malloc(sizeof( rec2));
t1=t;
while(f!=NULL)
{ t1->p1=f->p1;
t1->p2=f->p2;
f=f->next;
if (f!=NULL)
{ t1->next=malloc(sizeof(rec1));
q=t1->next;
do
{q->p1=f->p1;
q->p2=f->p2;
if ((q->p1!=1) && (q->p2!=1))
{ q->next=malloc(sizeof(rec1));
q=q->next; }
else { t1->link=malloc(sizeof(rec2));
t1=t1->link;};
f=f->next;}
while(((q->p1!=1) && (q->p2!=1)) || (f!=NULL)) ;
return(t);}
main() {
tochka(r);return(0);
Ñòðàíèöû: 1, 2, 3, 4, 5, 6, 7, 8, 9