Главная страница Случайная страница Разделы сайта АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
💸 Как сделать бизнес проще, а карман толще?
Тот, кто работает в сфере услуг, знает — без ведения записи клиентов никуда. Мало того, что нужно видеть свое раписание, но и напоминать клиентам о визитах тоже.
Проблема в том, что средняя цена по рынку за такой сервис — 800 руб/мес или почти 15 000 руб за год. И это минимальный функционал.
Нашли самый бюджетный и оптимальный вариант: сервис VisitTime.⚡️ Для новых пользователей первый месяц бесплатно. А далее 290 руб/мес, это в 3 раза дешевле аналогов. За эту цену доступен весь функционал: напоминание о визитах, чаевые, предоплаты, общение с клиентами, переносы записей и так далее. ✅ Уйма гибких настроек, которые помогут вам зарабатывать больше и забыть про чувство «что-то мне нужно было сделать». Сомневаетесь? нажмите на текст, запустите чат-бота и убедитесь во всем сами! Упражнения. 1. Запишите прототип для функции с именем Perimeter, которая возвращает значение типа unsigned long int и принимает два параметра
1. Запишите прототип для функции с именем Perimeter, которая возвращает значение типа unsigned long int и принимает два параметра, имеющих тип unsigned short int. unsigned long int Perimeter(unsigned short int, unsigned short int); 2. Запишите определение функции Perimeter согласно объявлению в упражнении 1. Два принимаемых ею параметра представляют длину и ширину прямоугольника, а функция возвращает его периметр (удвоенная длина плюс удвоенная ширина). unsigned long int Perimeter(unsigned short int length, unsigned short int width) { return 2*length + 2*width; } 3. Жучки: что неправильно в этой функции? #include < iostream.h> void myFunc(unsigned short int x); int main() { unsigned short int x, у; у = myFunc(int); cout < < " x: " < < x < < " у: " < < у < < " \n"; } void myFunc(unsigned short int x) { return (4*x); } Функция объявлена с использованием ключевого слова void, и поэтому она не может возвращать какое-либо значение. Кроме того, при вызове функции myFunc ей следует передать параметр x, а не int. 4. Жучки: что неправильно в этой функции? #include < iostream.h> int myFunc(unsigned short int x); int main() { unsigned short int x, у; у = myFunc(x); cout < < " x: " < < X < < " у: " < < у < < " \n"; } int myFunc(unsigned short int x); { return (4*x); } Эта функция была бы идеальной, если бы не точка с запятой, поставленная в конце заголовка ее определения. 5. Напишите функцию, которая принимает два параметра типа unsigned short int и возвращает результат деления первого параметра на второй. Функция не должна выполнять операцию деления, если второе число равно нулю, но в этом случае она должна возвратить значение -1. short int Divider(unsigned short int valOne, unsigned short int valTwo) { if (valTwo == 0) return -1; else return valOne / valTwo; } 6. Напишите программу, которая запрашивает у пользователя два числа и вызывает функцию, записанную при выполнении упражнения 5. Выведите результат или сообщение об ошибке, если функция возвратит значение, равное -1. #include < iostream.h> typedef unsigned short int USHORT; typedef unsigned long int ULONG; short int Divider( unsigned short int valone, unsigned short int valtwo); int main() { USHORT one, two; short int answer; cout < < " Enter two numbers.\n Number one: "; cin > > one; cout < < " Number two: "; cin > > two; answer = Divider(one, two); if (answer > -1) cout < < " Answer: " < < answer; else cout < < " Error, can't divide by zero! "; return 0; } 7. Напишите программу, которая запрашивает число и показатель степени. Напишите рекурсивную функцию, которая возводит число в степень путем многократного умножения числа на самое себя, т.е. если число равно 2, а показатель степени равен 4, то эта функция должна возвратить число 16. #include < iostream.h> typedef unsigned short USHORT; typedef unsigned long ULONG; ULONG GetPower(USHORT n, USHORT power); int main() { USHORT number, power; ULONG answer; cout < < " Enter a number: "; cin > > number; cout < < " To what power? "; cin > > power; answer = GetPower(number, power); cout < < number < < " to the " < < power < < " th power is " < < answer < < endl; return 0; } ULONG GetPower(USHORT n, USHORT power) { if(power == 1) return n; else return (n * GetPower(n, power-1)); }
День 6
Контрольные вопросы
1. Что представляет собой оператор прямого доступа и для чего он используется? Оператор точки прямого доступа представляет собой символ точки (.). Он используется для обращения к членам класса. 2. Что резервирует память — объявление или определение? Память резервируется определениями переменных. Объявления классов не резервируют память. 3. Объявление класса является его интерфейсом или выполнением? Объявление класса является его интерфейсом, который сообщает клиентам класса, как с ним взаимодействовать. Выполнение класса — это набор функций-членов, сохраняемых обычно в файле с расширением CPP. 4. Какова разница между открытыми (public) и закрытыми (private) данными- членами? К открытым переменным-членам могут обращаться клиенты класса, а к закрытым могут получить доступ только функции-члены класса. 5. Могут ли функции-члены быть закрытыми? Да. Как функции-члены, так и переменные-члены могут быть закрытыми. 6. Могут ли переменные-члены быть открытыми? Хотя переменные-члены могут быть открытыми, но считается хорошей практикой программирования, когда переменные-члены объявляются все же закрытыми, а доступ к этим данным обеспечивается за счет открытых методов доступа. 7. Если объявить два объекта класса Cat, могут ли они иметь различные значения своих переменных-членов itsAge? Да. Каждый объект класса имеет свои собственные переменные-члены. 8. Ну5кно ли объявления класса завершать точкой с запятой? А определения методов класса? Объявления класса заканчиваются точкой с запятой после закрывающей фигурной скобки, а определения функций-членов — нет. 9. Как бы выглядел заголовок функции-члена Meow класса Cat, которая не принимает никаких параметров и возвращает значение типа void? Заголовок функции-члена Meow() класса Cat, которая не принимает параметров и возвращает значение типа void, должен иметь следующий вид: void Cat:: Meow() 10. Какая функция вызывается для выполнения инициализации класса? Для инициализации класса вызывается конструктор.
|