Реферат

Реферат Загальні можливості мови AWK

Работа добавлена на сайт bukvasha.net: 2015-10-28

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 26.11.2024


Міністерство освіти України

Львівський державний університет ім. І. Франка

Факультет прикладної математики

та інформатики

Звіт

про виконання практичного завдання з курсу

"ДРФМД"

Львів - 1998

Приклади роботи з системою UNIX

  1. Скопіювати усі текстові файли (з розширеням .txt) в каталог TextDir

cp *.txt TextDir

  1. Дозволити читання усіх файлів каталогу AccessDir заданих шаблоном.

UNIX-скріпт в файлі changeaccess виглядає таким чином:

cd AccessDir

chmod +r $1

cd ..

Приклад виклику: changeaccess “m*.*”дозволяє читання усіх файлів, що

починаються буквою m. Шаблон обовязково вказується у лапках.

  1. Приклад з мовою awk. Потрібно розв’язати квадратні рівняння типу

Ax2 + Bx + C = 0 якщо коефіціенти A, B та C задані у вхідному файлі

Вміст файлу на мові awk sqrt.awk

{

a = 2 * $1;

b = $2;

c = $3;

d = b * b - 2 * a * c;

if (((a == 0) && (b == 0)) || (d < 0))

printf(" Unable to calculate ")

else

if (a == 0)

printf(" x = %f ", c / b)

else

if (d == 0)

printf(" x = %f ”, - b / a)

else

printf(" x1 = %f, x2 = %f ",

(- b - sqrt(d)) / a, (- b + sqrt(d)) / a)

}

Вміст файлу з UNIX-скріптом для запуску awk-програми sqrtcalc

awk -f sqrt.awk $1

Приклад роботи програми: нехай файл koef.txt містить таки коефіціенти:

  1. 0 -1

1 0 1

2 4 2

0 0 5

1 -3 2

  1. 1 -2

Набравши в командному рядку sqrtcalc koef.txtотримаємо результат:

x1 = -1, x2 = 1

Unable to calculate

x = -1

Unable to calculate

x1 = 1, x2 = 2

x = 2

Теоретична частина. Загальні можливості мови awk

awkінтерпретуюча мова програмування, що підтримується операційною системою UNIX. Виклик програми здійснюється командою awkf program file, де program є назвою файлу з awk-програмою, а file – файл даних. Не порушуючи логіки системи UNIX команда awk забезпечує потоковий ввід-вивід. who | awk -f program означає, що як файл даних використовується результат виконання команди who. Синтаксис awk-програм схожий із синтаксисом мови Cі, найбільша різниця між awk та Сі заключається в тому, що змінні в awk не типівізовані як в BASIC або тип Variant в Delphi.

Текст програми пишеться у операторних дужках { } перед яким може стояти шаблон BEGIN або END. BEGIN означає, що дана частина коду виконується до початку обробки вхідних даних, ENDпісля закінченя. Якщо шаблон не вказано, код виконується для кожного рядка з вхідного потоку.

BEGIN{ n = 1 }

{

a[n] = $1;

b[n] = $2;

n++

}

END{

for (i = 1; i <= n; i++)

printf(“a[i] + b[i] = %f\n”, a[i] + b[i])

}

В даному прикладі код {

a[n] = $1;

b[n] = $2;

n++

} виконається стільки разів, скільки рядків містить вхідний потік.

Арифметичні та логічні операції в awk:

awk

Pascal

z = x + y

z := x + y

z = x – y

z := x – y

z = x * y

z := x * y

z = x / y

z := x / y

z += y

z := z + y

z = x % y

z := x mod y

-=, *=, /=, %=

Аналогічно

x++

inc(x)

x--

dec(x)

x && y

x and y

x || y

x or y

! x

not x

x == y

x = y

x != y

x <> y

x < y

x < y

x > y

x > y

x ~ y

x in y

x = (w) ? y : z

if w then x := y else x := z


1. Реферат на тему The Decision To Drop The Atomic Bomb
2. Курсовая Пути снижения инфляции в Российской Федерации
3. Реферат САПР CosmosM
4. Курсовая Психосоциальная работа с пациентами психиатрической больницы
5. Курсовая на тему Поэтический мир Ахматовой
6. Реферат Пирамиды в Гизе
7. Реферат на тему Россия в олимпийской истории
8. Реферат Производственная организация, предприятие, фирма ключевой компонент хозяйственного потенциала с
9. Реферат на тему Environmentalists Essay Research Paper Bill McKibben and
10. Сочинение на тему Сокровенный LЁD