Главная страница
Навигация по странице:

  • Организация ввода вывода данных в С

  • 3. Форматный ввод-вывод Решение Форматированный вывод

  • Форматированный ввод

  • программное обеспечение. ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ. Контрольная работа по дисциплине Операционные системы и системные программирование Вариант 9 Исполнитель Олимов М


    Скачать 29.94 Kb.
    НазваниеКонтрольная работа по дисциплине Операционные системы и системные программирование Вариант 9 Исполнитель Олимов М
    Анкорпрограммное обеспечение
    Дата29.03.2023
    Размер29.94 Kb.
    Формат файлаdocx
    Имя файлаПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ.docx
    ТипКонтрольная работа
    #1024461


    МИНИСТЕРСТВО ОБРАЗОВАНИЯ РЕСПУБЛИКИ БЕЛАРУСЬ

    Белорусский национальный технический университет

    Международный институт дистанционного образования
    Кафедра « Информационные системы и технология»

    КОНТРОЛЬНАЯ РАБОТА

    по дисциплине: «Операционные системы и системные программирование»

    Вариант 9

    Исполнитель: Олимов М.

    Гр. № 41703621

    № 4170222009

    Руководитель: Бумай А.Ю.

    Минск 2023

    Содержание

    Введение…………………………………………………………………3

    Работа № 1. Организация ввода вывода данных в С………………....4

    Работа № 2. Бесформатный ввод-вывод………………………………8

    Работа № 3. Форматный ввод-вывод………………………………….10

    Вывод……………………………………………………………………12

    Список использованной литературы………………………………….13

    Введение

    Программное обеспе́чение (ПО) — наряду с аппаратными средствами, важнейшая составляющая информационных технологий, включающая компьютерные программы и данные, предназначенные для решения определённого круга задач и хранящиеся на машинных носителях. Программное обеспечение представляет собой либо данные для использования в других программах, либо алгоритм, реализованный в виде последовательности инструкций для процессора.

    ПО - в компьютерном жаргоне часто используется слово «софт» от английского software, которое в этом смысле впервые применил в статье American Mathematical Monthly математик из Принстонского университета Джон Тьюки в 1958 году. В области вычислительной техники и программирования программное обеспечение — это совокупность всей информации, данных и программ, которые обрабатываются компьютерными системами.


    1. Организация ввода вывода данных в С

    Решение

    Вывод: Помещение (направление) данных в поток вывода осуществляется с помощью оператора << который также иногда называют экстрактор (extractor). Конечно, можно создать свой поток вывода, но обычно достаточно стандартных потоков:

    cout - стандартный поток вывода (экран)

    cerr - стандартный поток вывода ошибок (экран)

    Переменную любого встроенного типа можно вывести используя следующую запись:

    cout<<"x="<
    Можно определить операторы потокового ввода/вывода и для созданных абстрактных типов данных.

    Ввод: Ввод данных из потока осуществляется аналогично с использованием обратного оператора >> (inserter):

    cin - стандартный поток ввода (клавиатура)

    Переменную любого временного типа можно ввести (считать) из потока:

    cin>>x;

    Для использования стандартной библиотеки нужно включить ее описание в текст программы. Это делается с помощью директивы препроцессору #include.

    #include // подключение стандартной библиотеки

    using namespace std; // объявление об использовании стандартного пространства имен

    void main() // функция main

    {

    cout<<"Data types:"<
    cout<<"int = "<
    cout<<"float = "<
    cout<<"double = "<
    Форматированный ввод/вывод

    В С++ используется механизм потокового ввода/вывода. Поток - механизм преобразования значений различного типа в последовательность символов (вывод) и наоборот (ввод)

    #include

    Примеры, которые приводились выше и ввод/вывод, до сих пор, обычно называют неформатированным выводом.

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

    #include

    Управление можно организовать используя манипуляторы потока, которые вставляются между объектами (записываемыми или читаемыми) и тем самым изменяют состояние потока (формат вывода значений):

    для вывода целых чисел

    dec; // устанавливает десятичную систему счисления

    hex; // устанавливает шестнадцатеричную систему счисления

    oct; // устанавливает восьмеричную систему счисления

    setbase(int b); // вывод целых чисел в системе счисления с основанием b(10,8...)

    show base; // показывает основание системы счисления

    для вывода чисел с плавающей точкой

    по умолчанию используется универсальный формат, который наилучшим образом представляет число с точностью 6 значащих цифр:

    float f=1234.56789;

    cout<
    научный формат, который представляет число десятичной дробью с одной цифрой перед точкой с показателем степени

    cout<
    фиксированный формат представляет число как целую часть с дробной частью отделенной точкой. Точность определяет максимальное число цифр после точки. Точность устанавливается с помощью манипулятора setpresision(int n) n - цифр после точки

    cout<
    для вывода логических переменных

    bool valuet=true;

    bool valuef=false;

    cout<
    cout<
    Дополнительно можно определить ширину вывода переменных в количестве символов:

    setw(int n); // если строка или число длиннее, то будут выведены все setw(0)

    А также задать символ для заполнения

    setfill(int c);

    cout<
    Можно определить место размещения заполнителей. По умолчанию как видите заполнители размещаются до значения. Это аналогично записи:

    cout<
    Можно наоборот:

    cout<
    Важные манипуляторы:

    endl; // заканчивается строка, т.е. вставляется символ '\n'

    ends; // заканчивается строка записью ' '

    flush; // очистка буфера потока

    2. Бесформатный ввод-вывод

    Решение

    Пример бесформатного ввода/вывода

    #include

    #include

    using namespace std;

    // То же, что и Example3(), только для записи использует функцию put()

    bool Example4(const char * readFile, const char * writeFile)

    {

    ifstream rf(readFile, ios::in | ios::binary);

    // проверка, открыт ли файл

    if (!rf.is_open())

    return false;

    ofstream wf(writeFile, ios::out | ios::binary);

    // проверка, открыт ли файл

    if (!wf.is_open())

    {

    rf.close(); // закрыть ранее открытый файл rf

    return false;

    }

    char sym;

    // цикл посимвольного чтения

    while (rf)

    {

    rf.get(sym); // считать из rf => sym

    if (rf) wf.put(sym); // записать sym => wf

    }

    rf.close(); // закрыть оба файла

    wf.close();

    }

    void main()

    {

    Example4("myfile.txt", "myfile2.txt");

    }

    3. Форматный ввод-вывод

    Решение

    Форматированный вывод

    Функция fprintf() имеет следующий синтаксис:

    int fprintf(указатель_на_поток, строка_форматирования, список_аргументов);

    #include

    struct person

    {

    char name[20];

    int age;

    };

    int main(void)

    {

    char * filename = "users.dat";

    struct person people[] = { {"Tom", 23}, {"Alice", 27}, {"Bob", 31}, {"Kate", 29} };

    // количество записываемых структур

    int n = sizeof(people)/sizeof(people[0]);

    FILE *fp = fopen(filename, "w");

    if (!fp)

    {

    printf("Error occured while opening file\n");

    return 1;

    }

    for(int i=0; i < n; i++)

    {

    fprintf(fp, "%s %d\n", people[i].name, people[i].age);

    }

    fclose(fp);

    printf("File has been written\n");

    return 0;

    }

    Форматированный ввод

    Для чтения данных в определенном формате применяется функция fscanf(), которая имеет следующий синтаксис:

    int fscanf(указатель_на_поток, строка_форматирования, список_аргументов);

    #include

    int main(void)

    {

    char * filename = "users.dat";

    char name[20]; // для считывания имени

    int age; // для считывания возраста

    FILE *fp = fopen(filename, "r");

    if (!fp)

    {

    printf("Error occured while opening file\n");

    return 1;

    }

    while((fscanf(fp, "%20s %d\n", name, &age))!=EOF)

    {

    printf("%s %d\n", name, age);

    }

    fclose(fp);

    return 0;

    }

    Заключение

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

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

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

    Всюду и во всех областях человеческой деятельности компьютеры будут все более востребованы. Соответственно, будет расти спрос и на программное обеспечение. Мы вступаем в совершенно новую эпоху. Эпоху программирования будущего.

    Литература

    1. Ляхович В.Ф. Основы информатики. — Ростов н.д: Опубликовано в «Фениксе», 2005. -608с.

    2. Вычислительная техника. Учебник для профессионального среднего образования (+CD) / Под общей редакцией Черноскутова И.А. — Санкт-Петербург: Петр, 2007. -272 с.: Шлик. : P.44

    3. Кэнсал С.А. Алгоритмизация и программирование: учебное пособие. — M.: ID «ФОРУМ»: ИНФА-М, 2006 . — 352 с. Ил. — (профессиональное обучение). : p.171, 180, 186, 19


    написать администратору сайта