DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

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

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

Звіт до лабораторної роботи № 4 з дисципліни “Операційні системи”

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних наук та інформаційних технологій
Факультет:
Комп’ютерні науки
Кафедра:
Кафедра програмного забезпечення

Інформація про роботу

Рік:
2011
Тип роботи:
Лабораторна робота
Предмет:
Операційні системи
Група:
УІ-31
Коротко про документ

Про що ця робота

Звіт містить виконання трьох завдань з лабораторної роботи № 4 з операційних систем. Наведено код програм на мові C та скрипти Bash для роботи з файлами та каталогами.

У роботі розглядаються

  • Операційні системи
  • Мова програмування C
  • Скрипти Bash
  • Робота з файлами
  • Обробка рядків
  • Файлова система

Зміст і розділи

  1. Мета роботи
  2. Програма 1: виведення парних слів
  3. Програма 2: виведення слів за підстрокою
  4. Програма 3: робота з каталогами та посиланнями
  5. Висновок
Для кого:Студенти та викладачі технічних спеціальностей закладів вищої освіти.
Викладачі:Баран Р. Д.

Ключові поняття

операційні системилабораторна роботамова CBashфайлирядкикаталогсимвольні посиланняпрограма

Частина тексту файла (без зображень, графіків і формул):

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА» Кафедра ЗІ Звітдолабораторноїроботи № 4 З дисципліни “Операційні системи” Мета роботи Написатипрограми для роботи з файлами відповідно до завдання 1.Програма Написати і відлагодити програму яка буде виводити з файлу всі парні слова Кодпрограми #include <stdio.h> #include <string.h> int main() { char c[32000]; int i; i=0; FILE * fi; fi = fopen("txt.txt","r"); for(i=0;i<32000;i++) { c[i]=getc(fi); if(c[i]==EOF) break; } i=0; const char*limits=" ,.;()-\n"; char *pw; printf("Результат\n"); pw=strtok(c,limits); while (pw!=NULL) { if((i%2)!=0) {puts(pw);} pw=strtok(NULL,limits); i++; } return 0; } Кодскрипта #!/bin/bash gcc -Wall -o 3_exe 3_1.c ./3_exe Текст файлу 1 2 3 4 5 6 7 8 9 10 Результат роботи програми 2.Програма Написати програму яка буде виводити всі слова з тексту які містять букви LF Код програми #include <stdio.h> #include <string.h> int main(void) { char c[32000]; int i; i=0; FILE * fi; fi = fopen("txt.txt","r"); for(i=0;i<32000;i++) { c[i]=getc(fi); if(c[i]==EOF) break;} i=0; const char*limits=" ,.;()-\n"; char *pw; printf("Результат\n"); pw=strtok(c,limits); while (pw!=NULL) { if(strstr(pw,"lf")!=NULL) {puts(pw);} pw=strtok(NULL,limits); } return 0; } Код скрипту #!/bin/bash gcc -Wall -o 3_exe 3_2.c ./3_exe Текст файлу life is good but i need printlf lflooking for,lf lf1 lfsing Результат роботи: 3.Програма Написати програму яка буде зчитувати файли поточного каталогу і виводити їх групами посортованими за кількістю посилань на файл. Код програми #include<sys/types.h> #include <sys/stat.h> #include <stdio.h> #include <fcntl.h> #include <string.h> #include <stdlib.h> int main() { inti,j,k,z,m; i=0;j=0;z=0;m=0; char c[50][150]; char b[150]; FILE*fi;FILE*f0; for(i=0;i<50;i++) {for(j=0;j<150;j++) {c[i][j]=' ';}} for(j=0;j<150;j++) {b[j]=' ';} b[0]= 'l'; b[8]= '/'; b[56]='k';b[1]= 'n'; b[51]='.'; b[57]='s'; b[3]= '-'; b[52]='/'; b[58]='/';b[4]= 's'; b[53]='l'; b[6]= '.'; b[54]='i';b[7]= '.'; b[55]='n'; b[149]= '\n'; for(i=1;i<50;i++) {for(j=0;j<150;j++) {c[i][j]=b[j];}} c[0][0]='#';c[0][4]='i';c[0][8 ]='a'; c[0][1]='!';c[0][5]='n';c[0][9 ]='s'; c[0][2]='/';c[0][6]='/';c[0][10]='h'; c[0][3]='b';c[0][7]='b';c[0][149]='\n'; k=8; fi = fopen("1.txt","r"); f0 = fopen("2.txt","w"); i=1;z=0; for(j=0;j<1000;j++) {k=k+1; c[i][k+50]='.'; c[i][k+51]='l';c[i][k+52]='i'; c[i][k+53]='n';c[i][k+54]='k'; c[i][k]=getc(fi); c[i][k+50]=c[i][k]; if(c[i][k]==EOF) {break;} if (c[i][k]=='\n') {c[i][k+50]='.'; c[i][k]=' '; k=8;i=i+1; z=i+1;}} for(i=0;i<z-1;i++) {for(j=0;j<150;j++) {printf("%c",c[i][j]);}} for(i=0;i<z-1;i++) {for(j=0;j<150;j++) {putc(c[i][j],f0); }} return 0;} Код скрипту #!/bin/bash ls>1.txt gcc -Wall -o 3_3 3_3.c ./3_3 bash 2.txt Текст документу 1.txt 1.txt 2.txt 3_3 3_3.c links script Текст документу 2.txt #!/bin/bash ln -s ../1.txt ./links/1.txt.link ln -s ../2.txt ./links/2.txt.link ln -s ../3_3 ./links/3_3.link ln -s ../3_3.c ./links/3_3.c.link ln -s ../links ./links/links.link ln -s ../script ./links/script.link Висновок:поглибив свої знання при роботі з ОС ,написав програми, навів результати їх роботи.
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!