- •Билет 1. Билет 7
- •Билет 2. Билет 8.
- •Билет 3. Билет 9. Билет 23.
- •Билет 4. Билет 10. Билет 24
- •Билет 5. Билет 11. Билет 27
- •Билет 6. Билет 12. Билет 28
- •Билет 13! Билет 19. Билет 31. Html. Структура документа, физическое и логическое форматирование, оформление абзацев и списков
- •Билет 14. Билет 20. Билет 32. Html. Рисунки и гиперссылки
- •Билет 15. Билет 25. Html. Использование и оформление таблиц
- •Билет 16. Билет 26. Html. Разбиение окна на фреймы
- •Билет 17. Html. Оформление документов с использованием css
- •Билет 18. Html. Типы css
- •Билет 21. Билет 29.
- •Билет 22
- •Билет 30 Структуры в языке с
- •Билет 33 Библиотека qt. Создание приложений в qt Creator.
- •Билет № 34 Библиотека qt. Работа со строками.
- •Билет 35 Использование JavaScript при оформлении динамических html страниц
- •Билет 36 Использование объектной модели документа (dom) в Java Script
- •Иерархия классов dom
- •Билет 37 Формы и их использование в JavaScript
- •Билет № 38 Объектная модель браузера и ее использование в JavaScript
Билет 6. Билет 12. Билет 28
Наследование в С++
Наследование- сохранение свойств базовых классов в производных.
Процесс, посредством которого один объект может наследовать свойства другого объекта, добавлять к ним черты, характерные только для него. (Автомобиль-автобус).
Таким образом не надо каждый раз описывать все с нуля. Это и есть главное преимущество наследования.
В ООП класс, от которого наследуют, принято называть базовым/ родительским.
Класс, который получается называется порожденным/производным.
Множественное наследование
Можно построить один класс из другого, наследуя его характеристики. C++ позволяет порождать класс из нескольких базовых классов. Когда ваш класс наследует характеристики нескольких классов, вы используете множественное наследование.
class A{ //базовый класс
};
class B : public A{ //public наследование
};
class C : protected A{ //protected наследование
};
class Z : private A{ //private наследование
};
Задание 6
<HTML> <HEAD> <TITLE>6 билет</TITLE> </HEAD> <FRAMESET cols="20%,80%"> <FRAME> <FRAMESET rows="40%, 60%"> <FRAME> <FRAMESET cols="15%, 35%,50%"> <FRAME> <FRAME> <FRAME> </FRAMESET> </FRAMESET> </FRAMESET> </HTML> |
Задание 12 <HTML> <HEAD> <TITLE>12 билет</TITLE> </HEAD> <BODY> <TABLE width=30% BORDER="1" CELLSPACING="0" CELLPADDING="40%"> <TR> <TD ROWSPAN="2" width=30%></TD> <TD COLSPAN="3"></TD> </TR> <TR> <TD width=5%></TD> <TD width=25%></TD> <TD width=40%></TD> </TR> </TABLE> </BODY> </HTML> |
Задание: НТМL. Вставить в один документ несколько картинок и сделать на них гиперссылки
<HTML>
<HEAD>
<TITLE>28 билет</TITLE>
</HEAD>
<BODY>
<a name=first><IMG src="1.jpg"></a>
<br>
<a name=second><IMG src="2.jpg"></a>
<br>
<a name=third><IMG src="3.jpg"></a>
<br>
<a href = #first>Ссылка на первую картинку</a>
<br>
<a href = #second>Ссылка на вторую картинку</a>
<br>
<a href = #third>Ссылка на третью картинку</a>
</BODY>
</HTML>
Билет 13! Билет 19. Билет 31. Html. Структура документа, физическое и логическое форматирование, оформление абзацев и списков
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML>
<HEAD>
<TITLE> Название страницы </TITLE>
</HEAD>
<BODY>
………
</BODY>
</HTML>
Тэги логического форматирования обозначают (своими именами) структурные типы своих текстовых фрагментов, такие, например, как программный код (тэг <CODE>), цитата (тэг <CITE>), аббревиатура (тэг <ABBR>) и т. д. С помощью тегов <EM> и <STRONG> можно, например, отметить отдельные фрагменты как выделенные, или сильно выделенные. Заметим, что речь идет о структурной разметке, которая не влияет на конкретное экранное представление фрагмента браузером. Поэтому такая разметка и называется логической. Фрагменты с логическим форматированием браузеры отображают на экране определенным образом, заданным по умолчанию. Вид отображения никак не связан со структурным типом фрагмента (т. е. именем тега логического форматирования), но может быть легко переопределен.
Пример:
<CITE>
<CODE>
<STRONG>
Тэг <STRONG>, как правило, используется для выделения важных фрагментов текста. Браузеры обычно отображают такой текст полужирным шрифтом. Применение данного тега предпочтительнее применения тега физического форматирования <B>. Тегом <STRONG> обычно размечают более важные фрагменты текста, чем те, что размечены тэгом <EM>.
Тэги физического форматирования определяют формат отображения указанного в них фрагмента текста в окне браузера (согласно предпочтениям автора документа). Например, для отображения фрагмента курсивом можно использовать тег курсива <I>.
Пример:
<B>
<I>
<U> подчеркивание
<BIG>
<SMALL>
<FONT>
Язык HTML предполагает, что автор документа ничего не знает о компьютере своего читателя. Читатель вправе установить любой размер окна и пользоваться любым из имеющихся у него шрифтов. Это означает, что место переноса в строке определяется только программой просмотра и установками конечного пользователя. Поскольку символы перевода строки оригинального документа игнорируются, то текст, отлично смотревшийся в окне редактора автора документа, может превратиться в сплошной неудобочитаемый текст в окне программы просмотра.
Избежать этой неприятности позволяет применение специального тега разделения на абзацы <P>. Перед началом каждого абзаца текста следует поместить тег <P>. Закрывающий тег </P> не обязателен. Браузеры обычно отделяют абзацы друг от друга пустой строкой.
Тэг <P> может задаваться с параметром горизонтального выравнивания ALIGN. По умолчанию выполняется выравнивание по левому краю.
LEFT |
Выравнивание текста по левой границе окна браузера |
CENTER |
Выравнивание по центру окна браузера |
RIGHT |
Выравнивание по правой границе окна браузера |
JUSTIFY |
Выравнивание по ширине (по двум сторонам) |
Каждый элемент маркированного списка имеет маркер — специальный значок слева. Список ограничен парным тэгом <UL>. Каждый элемент списка начинается с непарного тэга <LI>, после которого можно располагать текст, рисунки, таблицы и т.п. Список заканчивается закрывающим тэгом</UL>.
В команде <UL> можно задавать тип маркера. Можно использовать значения disc (кружок), circle (окружность) и square (квадрат).
Каждый элемент списка имеет номер. Нумерация может быть числовой или буквенной. Список ограничен парным тэгом <OL>. Каждый элемент списка начинается с непарного тэга <LI>, после которого можно располагать текст, рисунки, таблицы и т.п. Список заканчивается закрывающим тэгом </OL>.
В команде <OL> можно задавать тип нумерации (в параметре TYPE) и начальное значение номера (в параметре START).
Задание 13: Разработать класс, характеризующий радиодетали ( тип, номинал и т.д.). Класс должен иметь конструктор по умолчанию и конструктор с параметрами
#include<string> #include<iostream> #include<stdio.h> #include <stdlib.h> #include <conio.h> using namespace std; //объявление класса class RadioDet { public: RadioDet(); RadioDet(std::string t,int nom,int pr); ~RadioDet(); std::string GetType(); void SetType(std::string t); int GetNom(); void SetNom(int nom); int GetPrice(); void SetPrice(int pr); private: std::string type; int nominal; int price; };
//программа использующая класс int main() { int n=3; RadioDet R1; RadioDet R2("Polonium",200,2100); R1.SetType("Uranium"); R1.SetNom(100); R1.SetPrice(3000); cout<<R1.GetType()<<" "<<R1.GetNom()<<" "<<R1.GetPrice()<<endl; cout<<R2.GetType()<<" "<<R2.GetNom()<<" "<<R2.GetPrice()<<endl; RadioDet R3[n]; std::string nt; int nnom; int npr; for(int i=0;i<n;i++) { cout<<"Enter type: "; cin>>nt; R3[i].SetType(nt); cout<<"Enter nominal: "; cin>>nnom; R3[i].SetNom(nnom); cout<<"Enter price: "; cin>>npr; R3[i].SetPrice(npr); } for(int i=0;i<n;i++) cout<<R3[i].GetType()<<" "<<R3[i].GetNom()<<" "<<R3[i].GetPrice()<<endl; getch(); return 0; }
|
RadioDet::RadioDet()//конструктор по умолчанию {} RadioDet::RadioDet(std::string t,int nom,int pr) //конструктор с параметрами { type=t; nominal=nom; price=pr; } RadioDet::~RadioDet() {} std::string RadioDet::GetType() { return type; } int RadioDet::GetNom() { return nominal; } void RadioDet::SetType(std::string t) { type=t; } void RadioDet::SetNom(int nom) { nominal=nom; }
int RadioDet::GetPrice() { return price; } void RadioDet::SetPrice(int pr) { price=pr; }
|
Задание 19: Разработать класс, характеризующий пакет программ (название, фирма - изготовитель, версия и т.д.). Класс должен иметь дружественные функции ( операторы ) ввода/вывода (<< и >>).
#include<string> #include<iostream> #include<stdio.h> #include<stdlib.h> #include<conio.h> using namespace std; class Program { private: std::string Name; std::string Firm; int version;
public: Program(); Program(std::string nam,std::string f,int v); ~Program(); std::string GetName(); void SetName(std::string nam); std::string GetFirm(); void SetFirm(std::string f); int GetVersion(); void SetVersion(int v);
|
friend std::istream& operator>>(std::istream &is,Program &P) { cout<<endl<<"Name: "; is>>P.Name; cout<<"Firm: "; is>>P.Firm; cout<<"Version: "; is>>P.version; return is; };
friend std::ostream& operator<<(std::ostream &os,Program &P) { os<<P.Name<<" "; os<<P.Firm<<" "; os<<P.version; return os; }; };
|
int main() { Program P1; Program P2("Chrome ","Google ",5); std::cout<<P2; std::cin>>P1; std::cout<<P1; getch(); return 0; }
Program::Program() {} Program::Program(std::string nam,std::string f,int v) { Name=nam; Firm=f; version=v; } Program::~Program() {} std::string Program::GetName() { return Name; } |
std::string Program::GetFirm() { return Firm; } int Program::GetVersion() { return version; } void Program::SetName(std::string nam) { Name=nam; } void Program::SetFirm(std::string f) { Firm=f; } void Program::SetVersion(int v) { version=v;} |
Задание 31:Разработать структуру, характеризующую пакет программ (название, фирма - изготовитель, версия и т.д.). Продемонстрировать ее использование.
#include <fstream>
#include <iostream>
#include <math.h>
#include <stdio.h>
#include <string.h>
#include <conio.h>
using namespace std;
struct Programm
{
char name[20];
char firm[15];
int version;
};
int main()
{
int n=3;
Programm P[n];
for(int i=0;i<n;i++)
{
cout<<"Enter name: ";
cin>>P[i].name;
cout<<"Enter firm: ";
cin>>P[i].firm;
cout<<"Enter version: ";
cin>>P[i].version;
}
for(int i=0;i<n;i++)
{
cout<<P[i].name<<" "<<P[i].firm<<" "<<P[i].version<<endl;
}
getch();
return 0;
}
