Студопедия

Главная страница Случайная страница

Разделы сайта

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






  • Сервис онлайн-записи на собственном Telegram-боте
    Тот, кто работает в сфере услуг, знает — без ведения записи клиентов никуда. Мало того, что нужно видеть свое расписание, но и напоминать клиентам о визитах тоже. Нашли самый бюджетный и оптимальный вариант: сервис VisitTime.
    Для новых пользователей первый месяц бесплатно.
    Чат-бот для мастеров и специалистов, который упрощает ведение записей:
    Сам записывает клиентов и напоминает им о визите;
    Персонализирует скидки, чаевые, кэшбэк и предоплаты;
    Увеличивает доходимость и помогает больше зарабатывать;
    Начать пользоваться сервисом
  • Лабораторная работа №5. Цель работы: Освоение навыков работы со структурами: описание структур, обращение к полям структуры

    Структуры

    Подготовил:

    Студент 2 курса

    группы «ИНФ 14-2»

    Попов Максим

    Проверила:

    Водолазкина Н.А.

    Алматы, 2015

    Лабораторная работа №5

    Тема работы: Структуры

    Цель работы: Освоение навыков работы со структурами: описание структур, обращение к полям структуры, использование функций при описании структур.

    Оборудование рабочего места:

    · компьютер с загруженной программной средой Borland C Builder.

    Общие сведения:

    Один из базовых типов языка С – это тип char. Он описывает символьные переменные – величины размером в 1 байт, которые используются для представления литер. Примеры символьных констант: ‘а’, ‘+’, ‘*’, ‘2’. Символьные константы заключаются в одинарные кавычки.

    В С++ отсутствует специальный тип строк. Строки рассматриваются как

    массивы символов, оканчивающиеся нулевым символом (‘\0’). Доступ к строке осуществляется через адрес ее первого элемента, т. е. строка является указателем на первый символ. Помните, что обычный массив тоже можно рассматривать как указатель на первый элемент.

    Строка может быть объявлена либо как массив символов, либо как пере-

    менная типа char*. Следующие два описания эквивалентны:

    char s[] = ”hello”;

    char *sp = ”hello”;

    И в том и в другом случае число хранимых в памяти символов будет равным 6, а не 5, так как последним символом будет нулевой символ, обозначающий конец строки.

    Доступ к отдельным символам строки осуществляется по индексам, начинающимся с нуля. В приведенном выше примере s[0]=’h’, sp[5]=’o’.

    Персональное задание:

    Ввести структуру (с полями – числитель и знаменатель) для описания понятия «рациональное число». Составить и протестировать функцию: по введенной дате распечатывает дату на N дней вперед.

     

    Переводим блок-схему на язык С++Builder

    #include < iostream>

    #include < cstdlib>

    #include< math.h>

    using namespace std;

    struct data

    {

    int d;

    int m;

    int y;

    };

    int main()

    {

    data x, y;

    int n, m[13]={0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};

    cout< < " Vvedite daty (dd mm yy)";

    cin> > x.d> > x.m> > x.y;

    cout< < " Vvedite N=";

    cin> > n;

    cout < < endl< < " --------------------------------------" < < endl;

    y.d=x.d;

    y.m=x.m;

    y.y=x.y;

    while(n> =366)

    {

    if (((y.y%4==0)& & (y.m< =2))||(((y.y+1)%4==0)& & (y.m> 2)))

    {

    n=n-366;

    y.y++;

    }

    else

    {

    n=n-365;

    y.y++;

    }

    }

    if(n> =m[y.m]-(y.d-1))

    {

    n=n-(m[y.m]-y.d)-1;

    y.m++;

    y.d=1;

    if ((y.y%4==0)& & (y.m=2))

    {

    n--;

    }

    }

    else

    {

    y.d=y.d+n;

    n=0;

    }

    if (((y.y%4==0)& & (y.m< =2))||(((y.y+1)%4==0)& & (y.m> 2)))

    {

    m[2]++;

    }

    int f=0;

    while((n> 0)& & (f==0))

    {

    if(n> =m[y.m])

    {

    n=n-m[y.m];

    y.m++;

    }

    else f=1;

    if (y.m> 12)

    {

    y.m=y.m-12;

    y.y++;

    }

    }

    y.d=y.d+n;

    cout< < y.d< < " /" < < y.m< < " /" < < y.y< < endl;

    system(" pause");

    }

     

    Результат выполнения программы:

     

    <== предыдущая лекция | следующая лекция ==>
    Статья 301. Обязанности сторон коллективного трудового спора в ходе забастовки | 




    © 2023 :: MyLektsii.ru :: Мои Лекции
    Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
    Копирование текстов разрешено только с указанием индексируемой ссылки на источник.