WWW.UA.Z-PDF.RU

БЕЗКОШТОВНА ЕЛЕКТРОННА БІБЛІОТЕКА - Методички, дисертації, книги, підручники, конференції

 
<< HOME
CONTACTS




Продажа зелёных и сухих саженцев столовых сортов Винограда (по Украине)
Тел.: (050)697-98-00, (067)176-69-25, (063)846-28-10
Розовые сорта
Белые сорта
Чёрные сорта
Вегетирующие зелёные саженцы

Продажа зелёных и сухих саженцев столовых сортов Винограда (по Украине)
Тел.: (050)697-98-00, (067)176-69-25, (063)846-28-10
Розовые сорта
Белые сорта
Чёрные сорта
Вегетирующие зелёные саженцы
Pages:     | 1 |   ...   | 3 | 4 || 6 | 7 |

«ПРОГРАМУВАННЯ ОПОРНИЙ КОНСПЕКТ (для студентів економічних спеціальностей денної та заочної форм навчання) Вінниця – 2004 Вінницький інститут регіональної економіки та ...»

-- [ Страница 5 ] --

Серед порівняльних операцій до множин можна застосовувати операції, котрі позначаються знаками '=', '', '=' та '='. Множини вважаються рівними, якщо вони утримують однакові елементи, та нерівними, якщо вони відрізняються хоча б одним елементом. Якщо всі елементи множини А входять до складу множини В, то вважається, що множина А менше або дорівнює множині В, яка в свою чергу більше або дорівнює множині А.

Порівняльні операції, як відомо, дають результат логічного типу.

Операція перевірки належності елемента множині IN, лівим операндом якої являється елемент, а правим – множина, повертає значення True, якщо елемент належить множині, та False інакше.

Турбо Паскаль 7.0 містить дві процедури для роботи з множинами.

Процедура INCLUDE (S, X) включає в змінну-множину S елемент Х і еквівалентна оператору S:=S+X. Процедура EXCLUDE (S, Z) видаляє з змінної-множини S елемент Х і еквівалентна оператору S:=S–X (X – вираз базового типу множини S).

Приклади:

[l,2] * [3,4] [ ]; [1,2] * [2,3] [2];

[1,2] + [3,4] [1..41; [1..4] – [4] [1..3];

[l,2] = [2,1] True; [1,2,2] [1,2] False;

[1..4] = [1,2] True; [1,2] = [1..4] True;

1 in [1,2] True; 3 in [1,2] False.

Користуючись операціями для роботи з множинами, можна організувати введення або виведення множин.

Наприклад:

Vаг S: Set of 0..9; X: 0..9; N, I: Integer;

{Введення елементів множини} Write ( ' Введіть кількість елементів множини ' );

Readln (N);

S : = [ ]; {Встановлення початкового значення множини} For І: =1 То N Do Begin Read (X); {Введення елемента множини} S : = S + [Х] {Додавання нового елемента до множини} End;

{Виведення елементів множини} For І: =0 То 9 Do {Організація циклу через всі елемента базового типу} If I in S {Перевірка належності елемента множині} Then Writeln (I); {Виведення елемента множини}

–  –  –

9.1. Файли в Паскалі Файли, як відомо, призначені для збереження інформації на зовнішніх носіях пам’яті, мова Паскаль підтримує роботу з файлами і має засоби для виконання основних дій над ними: утворення та знищення файлів, введення та виведення інформації в файли тощо.

Оскільки файли діляться на двійкові (бінарні) та текстові, в мові Паскаль для роботи з ними введені відповідно поняття типізованих та текстових файлів. Перші розглядаються як впорядкована сукупність довільної кількості елементів одного і того ж будь-якого типу, другі – як впорядкована сукупність довільної кількості символьних рядків довільної довжини, відокремлених один від одного спеціальною комбінацією з двох символів (#13#10), яка має назву „кінець рядка”.

Якщо типізовані файли можуть зберігати дані тільки одного і того ж типу, то текстові файли можуть зберігати дані цілих, дійсних, символьного, булівського та рядкових типів в будь-якій комбінації. Це досягається за рахунок того, що при запису інформації в текстовий файл вона автоматично перетворюється в текстовий вигляд, а при зчитуванні інформації з текстового файла навпаки – автоматично перетворюється в дані необхідного типу. Запис та зчитування інформації з типізованих файлів відбувається без будь-яких перетворень.

Запис та зчитування інформації при роботі з файлами відбувається лише поелементно. Елементи типізованого файла, як зазначалось вище, одного й того ж типу. Елементи текстового файла можуть бути цілих, дійсних, символьного, булівського та рядкових типів. На елемент, який може бути зчитаний або на місце якого може бути записаний інший елемент в даний час, вказує маркер файла – вказівник поточного елемента файла.

Для роботи з файлами в Паскаль-програмі використовують файлові змінні, які є представниками файлів. Якщо файлова змінна є представником текстового файла, то для неї вказують стандартний тип TEXT.

Якщо ж файлова змінна є представником типізованого файла, то її тип описують за наступною синтаксичною діаграмою:

Ім’я або опис File Of типу елементів В Турбо Паскалі при описі типізованої файлової змінної в пам’яті комп’ютера під неї відводиться 128 байт, а при описи текстової файлової змінної – 256 байт.

Приклад:

Туре {Типізований файл, елементами якого в дійсні числа} FilеReal = File of real;

{Типізований файл, елементами якого є масиви з 10 цілих чисел} FileArray = File of array [1..10] of Integer;

Var F1: FileReal;

F2: FileArray;

F3: Text; {Змінна для роботи з текcтовим файлом) Існує також дві стандартні файлові змінні з іменами INPUT та OUTPUT, які є представниками стандартних текстових файлів, що пов’язані відповідно з клавіатурою та екраном дисплея. Стандартні текстові файли вважаються наперед відкритими, тому їх не потрібно відкривати та закривати, а в процедурах, та функціях для роботи з ними стандартні файлові змінні можна опускати.

9.2. Процедури та функції для роботи з файлами Процедури та функції для роботи з файлами в Турбо Паскалі суттєво відрізняються від процедур та функцій стандартного Паскаля. Тому зосередимось на перших.

Перш ніж розпочати зчитування або запис інформації в файл необхідно виконати дві дії: поєднати файлову змінну з іменем файла, представником якого ця змінна буде в програмі, та відкрити файл на введення (зчитування) або виведення (запис) інформації. Для виконання першої дії використовується процедура ASSIGN, для виконання другої дії – одна з процедур RESET, REWRITE, APPEND.

Процедура ASSIGN (F, S) пов’язує файлову змінну F з іменем файла S (S – рядковий вираз). Ім’я файла будується за правилами, що прийняті в OC MS DOS.

Процедура RESET (F) відкриває існуючий файл, пов’язаний з файловою змінною F, на введення. При цьому маркер файла встановлюється на його початок. Якщо файл не існує, то виникає помилка введеннявиведення.

Процедура REWRITE (F) відкриває новий порожній файл, пов’язаний з файловою змінною F, на виведення. При цьому маркер файла встановлюється на його початок. Якщо файл з даним іменем вже існує, то його зміст знищується.

Процедура APPEND (F) відкривав існуючий текстовий файл, пов’язаний з файловою змінною F, на виведення. При цьому маркер файла встановлюється на його кінець. Якщо файл з даним іменем не існує, то виникає помилка введення-виведення.

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

Після виконання установочних процедур можна виконувати введення (за допомогою процедур READ та READLN) або виведення (за допомогою процедур WRITE та WRITELN) інформації.

Процедура READ (F, X1 [, X2, …, XN] ) призначена для введення елементів файла, пов’язаного з файловою змінною F, починаючи з елемента, на який вказує маркер файла, з присвоюванням значень елементів файла відповідним змінним X1,...,XN. Після введення маркер файла встановлюється на елемент, то йде за останнім введеним елементом.

Процедура READLN [ (F [, X1, …, XN ] ) ] відрізняється від процедури READ тим, що призначена для введення елементів лише текстового файла, та після введення маркер файла встановлюється на перший елемент наступного рядка.

Процедура WRITE (F, X1 [, X2, …, ХN ] ) призначена для виведення значень виразів X1,...,XN в файл, пов’язаний з файловою змінною F, починаючи з місця, на яке вказує маркер файла. Після виведення маркер файла встановлюється за останнім виведеним значенням.

Процедура WRITELN [ F [, X1, …, XN ] ) ] відрізняється від процедури WRITE тим, що призначена для виведення значень виразів лише в текстовий файл, та після виведення всіх значень в файл записується комбінація символів „кінець рядка”.

Виведення інформації за допомогою процедур WRIRE та WRITELN при роботі з текстовими файлами відбувається через деякий буфер в оперативній пам’яті. Це означає, що фактичний запис інформації в файл відбувається не під час кожного виконання процедур виведення, а лише тоді, коли буфер повністю заповнений. За допомогою процедури FLUSH (F) можна вивести зміст буфера в файл, пов’язаний з файловою змінною F, навіть, якщо він повністю не заповнений.

Слід ще раз нагадати, що при введенні або виведенні в типізовані файли відповідно змінні або вирази X1,...,XN повинні бути того ж типу, що і елементи файла, а при введенні або виведенні в текстові файли вони можуть бути цілих, дійсних, символьного, булівського (тільки при виведенні) та рядкових типів. Якщо ці вимоги зв витримуються, то виникає помилка введення-виведення.

Для полегшення роботи з файлами можуть використовуватись додаткові процедури та функції.

Функція EOF (F) повертає значення TRUE, якщо маркер файла, пов’язаний з файловою змінною F, вказує на кінець файла, та FALSE інакше.

Функція EOLN (F) повертає значення TRUE, якщо маркер текстового файла, пов’язаного з файловою змінною F, вказує на кінець рядка (на комбінацію символів „кінець рядка”), та FALSE інакше.

Функція FILESIZE (F), повертає кількість елементів типізованого файла, пов’язаного в файловою змінною F.

Функція FILEPOS (F), повертає номер елемента типізованого файла, пов’язаного з файловою змінною F, на який в даний момент вказує маркер файла. Вважається, що елементи типізованого файла пронумеровані, починаючи від нуля.

Процедура TRUNCATE (F) призначена для відтинання кінцевої частини типізованого файла, пов’язаного з файловою змінною F, починаючи від елемента файла, на який вказує маркер файла.

Процедура SEEK (F, N) призначена для переміщення маркера типізованого файла, пов’язаного з файловою змінною F, на елемент з номером N (N – вираз цілого типу).

Процедура SETTEXTBUF (F, B[, S]) призначена для встановлення нового буфера текстового файла, пов’язаного з файловою змінною F, розміром S байт, починаючи з першого байта змінної В (S – вираз цілого типу, В – вираз любого типу). За умовчуванням буфер текстового файла становить 128 байт. Дана процедура дозволяє збільшити цей розмір, що прискорює обмін інформацією з файлом, та надає можливість безпосереднього доступу до буфера. Процедуру слід використовувати до відкриття файла.

Функція SEEKEOLN (F) повертає значення TRUE та встановлює маркер текстового файла, пов’язаного з файловою змінною F, на кінець рядка, якщо між маркером файла та кінцем рядка розташовані лише символи пробілів та горизонтальної табуляції, інакше повертає значення FALSE та встановлює маркер файла на перший значущий символ.

Функція SEEKEOF (F) повертає значення TRUE та встановлює маркер текстового файла, пов’язаного з файловою змінною F, на кінець файла, якщо між маркером файла та кінцем файла розташовані лише символи пробілів, горизонтальної табуляції та комбінації символів "кінець рядка", інакше повертає значення FALSE та встановлює маркер та перший значущий символ.


Купить саженцы и черенки винограда

Более 140 сортов столового винограда.


Після завершення роботи з файлом його необхідно закрити. Для цього призначена процедура CLOSE (F), яка, крім того, для текстових файлів, відкритих на виведення, виводить зміст буфера в файл. Після закриття файла файлова змінна F може бути використана для роботи з іншим файлом.

Приклад роботи з файлом:

Vаг F: file of integer; {F є представником типізованого файла, елементами якого є цілі числа} X: integer; {Змінна, в яку будуть зчитуватись елементи файла} Begin Assign (F, 'my.txt'); {Вважається, що файл my.txt існує в поточному каталозі поточного диску} Reset (F); {Відкриття файла на введення} While not Eof (F) Do {Введення всіх елементів файла та виведення їх на екран} begin Read (F, X);

Writeln (X) end;

Close (F) {Закриття файла} End.

Існують також процедури ERASE і RENAME для роботи з закритими файлами та процедури MKDIR, CHDIR, RMDIR і GETDIR для роботи з каталогами.

Процедура ERASE (F) видаляє файл, пов’язаний з файловою змінною F, а процедура RENAME (F, NAME) перейменовує файл, пов’язаний з файловою змінною F, в ім’я NAME (NAME – вираз рядкового типу).

Процедури MKDIR (S), CHDIR (S), RMDIR (S) відповідно утворюють, встановлюють поточним та видаляють каталог, шлях до якого заданий рядковим виразом S. При утворенні каталогу його ім’я не повинно співпадати з іменами існуючих файлів, а при видаленні каталогу він повинен бути порожнім. Процедура GETDIR (D, S) повертає в змінній S рядкового типу поточний каталог диску з номером D (D – вираз типу byte).

Значення D = 0 вказує на поточний диск, 1 – диск А, 2 – В і т.д.

9.3. Обробка помилок введення-виведення Як відзначалось вище, під час виконання процедур та функцій для роботи з файлами можуть виникати помилки введення-виведення. Якщо таке трапляється, то програма завершує свою роботу, а на екран виводиться діагностичне повідомлення.

Для усунення такої реакції на помилки введення-виведення можна перед виконанням небезпечної (з точки зору виникнення помилки) дії з файлом відімкнути автоматичний контроль на виникнення помилки введення-виведення за допомогою директиви компілятора {$I–}, а після виконання ввімкнути його знову за допомогою директиви компілятора {$I+}. Після цього слід звернутись до функції IORESULT. Якщо помилка введення-виведення не виникала, то функція повертає значення 0, інакше – код помилки. Таким чином, програміст в залежності від поверненого значення може вибирати той чи інший шлях подальшого виконання програми.

Слід пам’ятати, що після відключення автоматичного контролю на виникнення помилок введення-виведення у paзі виникнення такої помилки всі наступні дії з будь-яким файлом ігноруються до тих пір, поки не відбудеться звернення до функції IORESULT, яка до того ж повертає код помилки після виконання дії з файлом лише один (перший) раз, а подальші звернення до неї повертають значення 0.

Приклад обробки помилки введення-виведення наведений нижче.

Vаг F: Text; {F – є представником текстового файла} S: string [80]; {S – рядкова змінна} Begin Repeat Write ( ' Введіть ім’я текстового файла: ' );

Readln (S); {Введення імені файла} Assign (F, S); {Поєднання файлової змінної F з файлом S} {$I–} {Відключення автоматичного контролю} Reset (F); {Відкриття файла на введення} {$I+} {Включення автоматичного контролю} Until IOResult = 0; {Завершення циклу у разі не виникнення помилки, тобто, якщо файл з іменем S існує}......... {Продовження роботи програми} End.

–  –  –

10.1. Посилальні типи даних Посилальні (вказівні) типи даних визначають множину значень, що є вказівниками на значення деяких базових визначених типів.

Вказівники являють собою фізичні адреси розташування в пам’яті значень, на які вони вказують.

Синтаксична діаграма опису посилального типу має вигляд:

Ім’я або опис ^ базового типу

Приклад:

Туре {Посилальний тип на цілі значення} PInt = ^ integer;

{Посилальний тип на масиви з 10 дійсних чисел} РАгтау = ^ аггау [1.. 10] of real;

{Посилальний тип на записи з двох полів символьного типу} PRecord. = ^ record a, b: char end;

При описі посилального типу дозволяється виключення з загального правила, згідно якому всі імена повинні бути описані перед їх використанням. Тому тип PRecord.

міг бути описаний таким чином:

Туре PRecord = ^ Rec;

Rec = Record a, b: char end.;

В Турбо Паскалі існує стандартний посилальний тип POINTER.

При описі змінної посилального типу в пам’яті комп’ютера їй відводиться місце розміром 4 байти.

Над змінними посилальних типів можна виконувати наступні дії:

1. Присвоювати їм значення інших змінних посилальних типів, якщо їх типи співпадають. Змінним типу POINTER можна присвоювати значення змінних будь-якого посилального типу.



Pages:     | 1 |   ...   | 3 | 4 || 6 | 7 |
Похожие работы:

«ІННОВАЦІЙНА ЕКОНОМІКА Всеукраїнський науково-виробничий журнал Література 1.Ансофф И. Стратегическое управление / Игорь Ансофф ; пер. с англ. Е. Л. Леонтьева. – М. : Экономика, 1989. – 519 с.2.Василенко В. О. Стратегічне управління : навч. посіб. / В. О. Василенко, Т. І. Ткаченко. – К. : ЦУЛ, 2003. – 396 с.3.Жилінська Л. О. Напрямки розвитку стратегічного планування в сучасних умовах / Л. О. Жилінська // Економіка та держава. – 2007. – № 3. – С. 32 – 35. 4.Котлер Ф. Основы маркетинга / Филип...»

«МОНИТОРИНГ ГРОМАДСЬКОЇ ДУМКИ УДК 316.4.327:327 О. М. Балакірєва, канд. соціол. наук Інститут економіки та прогнозування НАН України Д. А. Дмитрук, канд. соціол. наук Інститут економіки та прогнозування НАН України ІНТЕГРАЦІЙНІ ОРІЄНТАЦІЇ НАСЕЛЕННЯ: ОСІНЬ 2013 р.1 У публікації за результатами моніторингових опитувань населення представлено динаміку суспільних настроїв стосовно двох можливих напрямів інтеграції України (Митний союз чи ЄС) у залежності від змісту і цілей цих проектів, орієнтацій...»

«МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ ХАРКІВСЬКА НАЦІОНАЛЬНА АКАДЕМІЯ МІСЬКОГО ГОСПОДАРСТВА СОЛОВЙОВА ОЛЬГА ЄВГЕНІВНА УДК 331.221: 658.14 ФОРМУВАННЯ ДИФЕРЕНЦІЙОВАНОЇ СИСТЕМИ ВИНАГОРОДИ ДИРЕКТОРІВ ВИКОНАВЧОГО ОРГАНУ БУДІВЕЛЬНИХ АКЦІОНЕРНИХ ТОВАРИСТВ Спеціальність 08.00.04 – економіка та управління підприємствами (економіка будівництва) АВТОРЕФЕРАТ дисертації на здобуття наукового ступеня кандидата економічних наук Харків – 2010 Дисертацією є рукопис. Робота виконана в Харківській національній...»

«Пашкевич М. Розвиток продуктивних сил в аспекті системного державного управління [Електронний ресурс] / М. Пашкевич // Соціально-економічні проблеми і держава. — 2012. — Вип. 2 (7). — С. 163-169. — Режим доступу до журн. : http://sepd.tntu.edu.ua/images/stories/pdf/2012/12pmssdu.pdf. УДК 330.332.2;351.82 JEL Classification: R11, R5 Марина Пашкевич ДВНЗ «Національний гірничий університет», пр. Карла Маркса, 19, м. Дніпропетровськ, 49600, Україна e-mail: pashkevichms@rambler.ru к.е.н., доцент...»

«46 Таблиця 3 – Вплив особистої мотивації та мотивації компанії на економічне зростання Особиста мотивація та мотивація компанії Показники Низька Середня Висока Характеристика Роботи, які не Роботи, які дозволяють Роботи, які потребують виконуваних робіт можуть забезпечити збільшити випуск особливих інтелектуальних збільшення випуску продукції за рахунок здібностей та дозволяють продукції екстенсивних факторів збільшити випуск продукції за рахунок інтенсивних факторів Вплив на економічне Не...»

«МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ СХІДНОУКРАЇНСЬКИЙ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ імені ВОЛОДИМИРА ДАЛЯ ВАСИЛЬКОНОВА ЕЛІНА ОЛЕКСАНДРІВНА УДК 332.14 (043) УПРАВЛІННЯ РОЗВИТКОМ РЕГІОНУ НА ЗАСАДАХ ФОРМУВАННЯ ЙОГО ПОЗИТИВНОГО ІМІДЖУ Спеціальність 08.00.05 Розвиток продуктивних сил і регіональна економіка АВТОРЕФЕРАТ дисертації на здобуття наукового ступеня кандидата економічних наук Сєвєродонецьк – 2016 Дисертацією є рукопис. Роботу виконано в Черкаському державному технологічному університеті...»

«УДК 37 (09) к. пед. н., доц. Приймас Н.В. (КОГПА ім. Тараса Шевченка) ЕТНОПЕДАГОГІКА ТВОРЧОСТІ УЛАСА САМЧУКА ЯК ДЖЕРЕЛО РЕАЛІЗАЦІЇ ЗАВДАНЬ НАЦІОНАЛЬНО-ПАТРІОТИЧНОГО ВИХОВАННЯ Проаналізовано засади української етнопедагогіки у творчості Уласа Самчука. Зосереджено увагу на відображенні письменником національного фольклору, народних традицій, звичаїв та обрядів, трудової діяльності народу, що сприяє розкриттю національного світогляду, менталітету народу. Акцентовано, що зображення у романах...»

«12. Окландер М. А. Логістична система підприємства : [монографія] / М. А. Окландер. – О. : Астропринт, 2004. – 312 с.13. Крикавський Є. В. Логістика. Для економістів : підручник / Є. В. Крикавський. – Львів : Національний університет Львівська політехніка, 2004. –448 с.14. Pfohl H. Ch. Systemy logistyczne. Biblioteka Logistyke / H. Ch. Pfohl. – Poznan, 1998. – 420 s.15. Уваров С. А. Логистика : общая концепция, теория и практика / С. А. Уваров. – СПб. : ИнвестНП, 1996. – 232 с. 16. Чернишов М....»

«529 Актуальні проблеми держави і права УДК 347.132.144 Б. П. Карнаух ВИНА ЯК УМОВА ДЕЛІКТНОЇ ВІДПОВІДАЛЬНОСТІ В КРАЇНАХ АНГЛО-АМЕРИКАНСЬКОЇ ПРАВОВОЇ СІМ'Ї У країнах англо-американської правової сім'ї деліктна відповідальність розглядається крізь призму економічного аналізу — як спосіб перерозподілу витрат. Як стверджується у Стенфордській філософській енциклопедії, деліктний позов у разі його задоволення дає змогу перекласти тягар збитків, яких зазнала потерпіла особа, на плечі відповідача....»

«статистики; комітет захисту прав споживачів; комітет виборців України; контролінг (облік і контроль на фірмі, підприємстві; профільний підрозділ фірми) – контроль (дії, пов'язані з перевіркою знань та виконання завдань): контролінг збутової політики в системі управління підприємництвом; застосовувати експериментальну методику з використанням тестового контролю знань у навчальному процесі;в) паронімія розмовної лексики та слів-термінів: жирувати (у розумовому жити в достатку, надмірній розкоші)...»

«УДК 378.14 СУТНІСТЬ ПРОФЕСІЙНОЇ КОМУНІКАЦІЇ У ПЕДАГОГІЧНІЙ ОСВІТІ Дмитренко К. А. У статті проаналізовано сутність професійної комунікації у педагогічній освіті, визначено поняття комунікація та професійна комунікація. Автором проведено аналіз останніх досліджень і публікацій з проблеми комунікації у педагогічній освіті з метою удосконалення професійної підготовки майбутніх соціальних педагогів і досягнення ними професіоналізму. Ключові слова: спілкування, педагогічне спілкування,...»

«оптимуму. У таких умовах існує цілком реальний ризик потрапляння системи зайнятості в порочне коло «нескінченної» трансформації, де ймовірність того, що унікальний людський і соціальний капітал зможе подолати резистентність індустріальної системи і стати головним атрактором, наближається до нуля. Однак, можливість реактивації трансформаційних змін все ж залишається і нами вона вбачається у реформуванні базових інститутів соціалізації, які, володіючи значним потенціалом впливу на процес...»

«Вісник Східноєвропейського університету економіки і менеджменту встановлюватися як для кожного окремого продукту, так і для асортиментного ряду, продуктових груп. Даний алгоритм прийнятний також для підприємств, що практикують direct costing. ВИСНОВКИ Підприємства, які мають складну структуру, багато напрямків бізнесу, в тому числі комплексне виробництво, повинні розглянути ефективність розподілу витрат і формування собівартості кожного виду продукції (робіт, послуг). Це є запорукою правильного...»




Продажа зелёных и сухих саженцев столовых сортов Винограда (по Украине)
Тел.: (050)697-98-00, (067)176-69-25, (063)846-28-10
Розовые сорта
Белые сорта
Чёрные сорта
Вегетирующие зелёные саженцы


 
2017 www.ua.z-pdf.ru - «Безкоштовна електронна бібліотека»