Студопедия — Лечебная работа
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Лечебная работа

Руководитель практики ______________________________

Отчет по курсовой работе

по предмету «Типы и структуры данных»

на тему «Моделирование абстрактных типов данных (АТД) для различных реализаций»

Вариант

 

Подготовила студентка группы 8К10 Сенина А. А.

Проверил кандидат технических наук Фофанов О. Б.

 

 

Г. Томск, 2013 год

 

Задание: 1. Спроектировать предметную область службы занятости

2. Реализовать процедуры перемещения элементов очереди в двух связанный список и наоборот. Список и очередь реализуется с помощью указателей.

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Collections;

using System.Collections.Specialized;

 

namespace ConsoleApplication_Kurs{

 

public class EmploymentService//описание предметной области

{

public string name;

public string education;

public string LastWorkPlace

{

set { name = value; }

get { return name; }

}

 

public string Education

{

set { education = value; }

get { return education; }

}

 

}

 

public class ListNode//класс для описание элементов списка

{

public EmploymentService es;

public ListNode next;

private ListNode privious;

 

private EmploymentService value

{

get {return es;}

set{es=value;}

}

 

public ListNode(EmploymentService es)

{

this.es=es;

}

 

public ListNode(EmploymentService es,ListNode next)

{

this.es=es;

this.next=next;

}

 

public ListNode Next

{

get {return this.next;}

set {this.next=value;}

}

 

public ListNode Privious

{

get {return this.privious;}

set {this.privious=value;}

}

}

 

public class MyQueue: Queue//описание класса очередь

{

public int n;

private ListNode front;

private ListNode back;

 

 

public MyQueue(int N)

{

this.n = N;

}

 

public MyQueue()

{

front = null;

}

 

public bool isEmty()

{

//if (n == 0) return true;

//else return false;

return front == null;

}

 

public EmploymentService Front

{

get { return front.es; }

}

 

 

public void Enqueue(EmploymentService es) //вставить элемент в очередь

{

ListNode node = new ListNode(es);

if (front == null)

{

front = back = node;

}

else

{

node.next = front;

front = node;

node.next.Privious = front;

back = back.next = new ListNode(es);

}

Count++;

}

 

public int Count//размер очереди

{

get { return n; }

set { n = value; }

}

 

public EmploymentService Dequeue()//удаление элемента из очереди

{

if (front == null)

{

throw new InvalidOperationException();

}

else

{

ListNode node = front;

if (front.next!= null)

{

front.Next.Privious = null;

}

front = front.Next;

Count--;

return node.es;

}

 

}

}

 

 

public class LinkedList//описание связного списка

{

private ListNode First;

private ListNode Now;

private ListNode Last;

private UInt32 n;

 

public LinkedList()

{

n = 0;

First = Now = Last;

}

 

public bool isEmpty

{

get { return n == 0; }

}

 

public void InsertFirst(EmploymentService es) //вставить в начало

{

ListNode node = new ListNode(es);

if (First == null)

{

First = Last = node;

}

else

{

node.Next = First;

First = node; //First и newNode указывают на один и тот же объект

node.Next.Privious = First;

}

Count++;

}

 

public ListNode DeleteFirst()//удалить первый элемент

{

if (First == null)

{

throw new InvalidOperationException();

}

else

{

ListNode node = First;

if (First.Next!= null)

{

First.Next.Privious = null;

}

First = First.Next;

Count--;

return node;

}

}

 

public void InsertBack(EmploymentService es) //вставить в конец

{

ListNode node = new ListNode(es);

 

if (Last == null)

{

First = Last = node;

}

else

{

Last.Next = node;

node.Privious = Last;

Last = node;

}

Count++;

}

 

public ListNode DeleteBack()//удалить последний элемент

{

if (Last == null)

{

throw new InvalidOperationException();

}

else

{

ListNode node = Last;

if (Last.Privious!= null)

{

Last.Privious.Next = null;

}

Last = Last.Privious;

Count--;

return node;

}

}

 

public void ClearList()

{

while (!isEmpty)

{

DeleteFirst();

}

}

 

public uint Count

{

get { return n; }

set { n = value; }

}

}

 

public class Transfer//класс, описывающий перенос элементов из одного списка в другой

{

MyQueue q1;

LinkedList l1;

public Transfer(MyQueue q, LinkedList l)

{

this.l1 = l;

this.q1 = q;

}

 

public void TransferL_St_Q(LinkedList l, MyQueue q) //перенос из начала двусвязного списка в очередь

{

int n = 0;

EmploymentService es;

do

{

n++;

es = l.DeleteFirst().es;

q.Enqueue(es);

 

}

while (n <= l.Count);

}

 

public void TransferQ_L_St(MyQueue q, LinkedList l) //перенос элементов из очереди в начало двусвязного списка

{

int n = 0;

EmploymentService es;

while (n < q.Count)

{

es = q.Dequeue();

l.InsertFirst(es);

n++;

}

}

 

public void TransferQ_L_End(MyQueue q, LinkedList l) //перенос элементов из очереди в конец двусвязного списка

{

int n = 0;

EmploymentService es;

while (n < q.Count)

{

es = q.Dequeue();

l.InsertBack(es);

n++;

}

}

 

public void TransferL_End_Q(LinkedList l,MyQueue q) //перенос элементов из конца двусвязного списка в очередь

{

int n = 0;

EmploymentService es;

while (n < l.Count)

{

es = l.DeleteBack().es;

q.Enqueue(es);

n++;

}

}

}

 

class Program

{

static void Main(string[] args)

{

EmploymentService es1 = new EmploymentService();

EmploymentService es2 = new EmploymentService();

EmploymentService es3 = new EmploymentService();

 

MyQueue queue = new MyQueue();

//queue.Enqueue(es);

Console.WriteLine("queue: " + queue.Count);

LinkedList list2 = new LinkedList();

list2.InsertFirst(es1);

list2.InsertFirst(es2);

//list2.InsertFirst(es3);

Console.WriteLine("List2: "+list2.Count);

 

 

Transfer tr = new Transfer(queue, list2);

tr.TransferL_St_Q(list2, queue);

Console.WriteLine("List2: " + list2.Count + " queue: " + queue.Count);

Console.ReadLine();

 

tr.TransferQ_L_St(queue, list2);

Console.WriteLine("List2: " + list2.Count + " queue: " + queue.Count);

Console.ReadLine();

 

tr.TransferL_End_Q(list2,queue);

Console.WriteLine("List2: " + list2.Count + " queue: " + queue.Count);

Console.ReadLine();

 

tr.TransferQ_L_End(queue, list2);

Console.WriteLine("List2: " + list2.Count + " queue: " + queue.Count);

Console.ReadLine();

}

}

}

 

 

Рис. 1. Результат многократного переноса элементов из одного списка в другой.

Лечебная работа

Вид профессиональной деятельности Место проведения практики Кол-во часов Количество манипуляций, пациентов и т.д. Формируемые навыки и умения Уровень освоения*
  Например: Курация больных (по нозологиям)          
1.1 и т.д.            
  Диагностические манипуляции          
2.1 и т.д            
  Лечебные манипуляции          
3.1 и т.д            
  Операции          
4.1            
  Дежурства          
  ………………          

Пояснение: * – уровни освоения навыков и умений: 1 – знать показания к применению, профессионально ориентироваться, 2 – оценить, принять участие, 3 – выполнять самостоятельно.

 




<== предыдущая лекция | следующая лекция ==>
ГОСТ Р 53587-2009 Колбасы Копченые из конины. Технические условия; | Отчет по лабораторной работе №7

Дата добавления: 2015-06-16; просмотров: 380. Нарушение авторских прав; Мы поможем в написании вашей работы!



Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...

Растягивание костей и хрящей. Данные способы применимы в случае закрытых зон роста. Врачи-хирурги выяснили...

ФАКТОРЫ, ВЛИЯЮЩИЕ НА ИЗНОС ДЕТАЛЕЙ, И МЕТОДЫ СНИЖЕНИИ СКОРОСТИ ИЗНАШИВАНИЯ Кроме названных причин разрушений и износов, знание которых можно использовать в системе технического обслуживания и ремонта машин для повышения их долговечности, немаловажное значение имеют знания о причинах разрушения деталей в результате старения...

Различие эмпиризма и рационализма Родоначальником эмпиризма стал английский философ Ф. Бэкон. Основной тезис эмпиризма гласит: в разуме нет ничего такого...

Этапы и алгоритм решения педагогической задачи Технология решения педагогической задачи, так же как и любая другая педагогическая технология должна соответствовать критериям концептуальности, системности, эффективности и воспроизводимости...

Понятие и структура педагогической техники Педагогическая техника представляет собой важнейший инструмент педагогической технологии, поскольку обеспечивает учителю и воспитателю возможность добиться гармонии между содержанием профессиональной деятельности и ее внешним проявлением...

Репродуктивное здоровье, как составляющая часть здоровья человека и общества   Репродуктивное здоровье – это состояние полного физического, умственного и социального благополучия при отсутствии заболеваний репродуктивной системы на всех этапах жизни человека...

Studopedia.info - Студопедия - 2014-2024 год . (0.01 сек.) русская версия | украинская версия