🗊Презентация Строки. Лекция 4

Нажмите для полного просмотра!
Строки. Лекция 4, слайд №1Строки. Лекция 4, слайд №2Строки. Лекция 4, слайд №3Строки. Лекция 4, слайд №4Строки. Лекция 4, слайд №5Строки. Лекция 4, слайд №6Строки. Лекция 4, слайд №7Строки. Лекция 4, слайд №8Строки. Лекция 4, слайд №9Строки. Лекция 4, слайд №10Строки. Лекция 4, слайд №11Строки. Лекция 4, слайд №12Строки. Лекция 4, слайд №13Строки. Лекция 4, слайд №14Строки. Лекция 4, слайд №15Строки. Лекция 4, слайд №16Строки. Лекция 4, слайд №17Строки. Лекция 4, слайд №18Строки. Лекция 4, слайд №19Строки. Лекция 4, слайд №20Строки. Лекция 4, слайд №21Строки. Лекция 4, слайд №22Строки. Лекция 4, слайд №23Строки. Лекция 4, слайд №24Строки. Лекция 4, слайд №25

Содержание

Вы можете ознакомиться и скачать презентацию на тему Строки. Лекция 4. Доклад-сообщение содержит 25 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Основы программирования на C++
Лекция 4. Строки
Описание слайда:
Основы программирования на C++ Лекция 4. Строки

Слайд 2





Повторение.
Что такое указатель? Как его объявить?
Как указать на переменную? Пример
Арифметика указателей
Что такое ссылка?
Как выделяется память в C++? Как в C?
Как создать динамический массив? Как создать N-мерный динамический массив? Пример.
Задача: Дан целочисленный массив [2, 5, 3, 6, 7, 9, 0]. Напишите функцию, возвращающую указатель на цифру 7 в массиве. Через полученный указатель выведите все дальнейшие цифры. Массив кончается нулём.
Описание слайда:
Повторение. Что такое указатель? Как его объявить? Как указать на переменную? Пример Арифметика указателей Что такое ссылка? Как выделяется память в C++? Как в C? Как создать динамический массив? Как создать N-мерный динамический массив? Пример. Задача: Дан целочисленный массив [2, 5, 3, 6, 7, 9, 0]. Напишите функцию, возвращающую указатель на цифру 7 в массиве. Через полученный указатель выведите все дальнейшие цифры. Массив кончается нулём.

Слайд 3





Мем в начале
Описание слайда:
Мем в начале

Слайд 4





Символы и строки. Как?
Строка — последовательность (массив) символов. Если в выражении встречается одиночный символ, он должен быть заключен в одинарные кавычки. При использовании в выражениях строка заключается в двойные кавычки. Признаком конца строки является нулевой символ \0. 
Объявляться строка может так:
char *string = "Hello, guys!";
char str[80] = "Hello, guys!";
char s[] = "Hello, guys!";
char *st = new char[80];
   strcpy(st, "Hello, guys!“);
char mas[12] = { 'H', 'e', 'l', 'l', 'o', ' ', 'g', 'u', 'y', 's' , '!','\0' };
Описание слайда:
Символы и строки. Как? Строка — последовательность (массив) символов. Если в выражении встречается одиночный символ, он должен быть заключен в одинарные кавычки. При использовании в выражениях строка заключается в двойные кавычки. Признаком конца строки является нулевой символ \0. Объявляться строка может так: char *string = "Hello, guys!"; char str[80] = "Hello, guys!"; char s[] = "Hello, guys!"; char *st = new char[80]; strcpy(st, "Hello, guys!“); char mas[12] = { 'H', 'e', 'l', 'l', 'o', ' ', 'g', 'u', 'y', 's' , '!','\0' };

Слайд 5





Таблица ASCII
Описание слайда:
Таблица ASCII

Слайд 6





Необходимо понимать
Символьной переменной можно присваивать код символа из таблицы ASCII. Также можно из кода символа или его самого отнимать число, чтобы поменять его код. Например:
char z = 'z';
char a = z - 25;
cout << a << endl;
Описание слайда:
Необходимо понимать Символьной переменной можно присваивать код символа из таблицы ASCII. Также можно из кода символа или его самого отнимать число, чтобы поменять его код. Например: char z = 'z'; char a = z - 25; cout << a << endl;

Слайд 7





Как с ними работать?
Для работы со строками существует специальная библиотека string.h (или cstring). НЕ ПУТАТЬ С БИБЛИОТЕКОЙ string.
Ссылки на описание библиотеки string.h:
https://ru.wikipedia.org/wiki/String.h
http://www.cplusplus.com/reference/cstring/
http://cppstudio.com/cat/309/325/
Описание слайда:
Как с ними работать? Для работы со строками существует специальная библиотека string.h (или cstring). НЕ ПУТАТЬ С БИБЛИОТЕКОЙ string. Ссылки на описание библиотеки string.h: https://ru.wikipedia.org/wiki/String.h http://www.cplusplus.com/reference/cstring/ http://cppstudio.com/cat/309/325/

Слайд 8





Функция strlen
Длина С-строки определяется по достижению нулевого символа ‘\0’ — нуль терминатор. Функция strlen видит начало Си-строки  и начинает сначала считать количество символов (байтов, отводимых под каждый символ), этот процесс выполняется до тех пор, пока не будет достигнут завершающий нулевой символ. 
Прототип функции:
size_t strlen(const char * string);
Пример работы:
char *string = "1234567890";
cout << strlen(string) << endl;
Описание слайда:
Функция strlen Длина С-строки определяется по достижению нулевого символа ‘\0’ — нуль терминатор. Функция strlen видит начало Си-строки и начинает сначала считать количество символов (байтов, отводимых под каждый символ), этот процесс выполняется до тех пор, пока не будет достигнут завершающий нулевой символ. Прототип функции: size_t strlen(const char * string); Пример работы: char *string = "1234567890"; cout << strlen(string) << endl;

Слайд 9





Функция strcpy
char * strcpy(char * destptr, const char * srcptr);
char * strncpy(char * destptr, const char * srcptr, size_t num);
Функция копирует строку srcptr, включая завершающий нулевой символ в строку назначения, на которую ссылается указатель destptr.
Пример:
char *string = "This is string";
char *s=new char[15];
strcpy(s, string);
cout << s << endl;
Описание слайда:
Функция strcpy char * strcpy(char * destptr, const char * srcptr); char * strncpy(char * destptr, const char * srcptr, size_t num); Функция копирует строку srcptr, включая завершающий нулевой символ в строку назначения, на которую ссылается указатель destptr. Пример: char *string = "This is string"; char *s=new char[15]; strcpy(s, string); cout << s << endl;

Слайд 10





Функция strcat
char * strcat(char * destptr, const char * srcptr);
Соединяет обе строки в одну destptr, добавляя строку srcptr в конец destptr. 

char *s1= "This ";
char *s2 = "is ";
char *s3 = "string";
char *s=new char[15];
s = "";
strcat(s, s1);
strcat(s, s2);
strcat(s, s3);
cout << s << endl;
Описание слайда:
Функция strcat char * strcat(char * destptr, const char * srcptr); Соединяет обе строки в одну destptr, добавляя строку srcptr в конец destptr. char *s1= "This "; char *s2 = "is "; char *s3 = "string"; char *s=new char[15]; s = ""; strcat(s, s1); strcat(s, s2); strcat(s, s3); cout << s << endl;

Слайд 11





Функция strcmp
int strcmp(const char * string1, const char * string2);
int strncmp(const char * string1, const char * string2, size_t num);
Функция сравнивает строки и возвращает разницу в строках. Начиная с первых символов функция сравнивает поочередно каждую пару символов, и продолжается это до тех пор, пока не будут найдены различные символы или не будет достигнут конец строки.
Функция возвращает несколько значений, которые указывают на отношение строк:
Нулевое значение говорит о том, что обе строки равны.
Значение больше нуля указывает на то, что строка string1 больше строки string2, значение меньше нуля свидетельствует об обратном.
Описание слайда:
Функция strcmp int strcmp(const char * string1, const char * string2); int strncmp(const char * string1, const char * string2, size_t num); Функция сравнивает строки и возвращает разницу в строках. Начиная с первых символов функция сравнивает поочередно каждую пару символов, и продолжается это до тех пор, пока не будут найдены различные символы или не будет достигнут конец строки. Функция возвращает несколько значений, которые указывают на отношение строк: Нулевое значение говорит о том, что обе строки равны. Значение больше нуля указывает на то, что строка string1 больше строки string2, значение меньше нуля свидетельствует об обратном.

Слайд 12





Пример – проверка пароля
char *password = "123";
cout << "Enter the password: ";
char input[30];
cin >> input;
if (strcmp(input, password) == 0)
cout << "Correct" << endl;
else cout << "Incorrect password" << endl;
Описание слайда:
Пример – проверка пароля char *password = "123"; cout << "Enter the password: "; char input[30]; cin >> input; if (strcmp(input, password) == 0) cout << "Correct" << endl; else cout << "Incorrect password" << endl;

Слайд 13





Функция strstr
char* strstr(const char *string1, const char *string2);
Функция возвращает указатель на первое вхождение строки string2 в строку string1.
Нулевой указатель, если последовательность символов строки string2 не входит в string1.
char *string1 = "123";
char *string2 = "Тут где-то находится числа 123 & 456";
cout << strstr(string2, string1) << endl;
Описание слайда:
Функция strstr char* strstr(const char *string1, const char *string2); Функция возвращает указатель на первое вхождение строки string2 в строку string1. Нулевой указатель, если последовательность символов строки string2 не входит в string1. char *string1 = "123"; char *string2 = "Тут где-то находится числа 123 & 456"; cout << strstr(string2, string1) << endl;

Слайд 14





Функции atoi, atof, atol
Данные функции преобразуют строковую переменную в целочисленные и вещественные типы данных:
atoi(const char *string); - преобразует строку к типу int
atof(const char *string); - преобразует строку к типу float
atol(const char *string); - преобразует строку к типу long
Все данные функции возвращают типы, к которым они преобразуют строку.
Описание слайда:
Функции atoi, atof, atol Данные функции преобразуют строковую переменную в целочисленные и вещественные типы данных: atoi(const char *string); - преобразует строку к типу int atof(const char *string); - преобразует строку к типу float atol(const char *string); - преобразует строку к типу long Все данные функции возвращают типы, к которым они преобразуют строку.

Слайд 15





Обратная функция – itoa_s
char *_itoa_s(int value, char * string, int size, int radix);
Данная функция принимает значение и выходную строку, размер строки и основание системы счисления.
int number = 228;
int radix = 16;
char strToNum[5];
_itoa_s(number, strToNum, sizeof(strToNum), radix);
cout << strToNum << endl;
Описание слайда:
Обратная функция – itoa_s char *_itoa_s(int value, char * string, int size, int radix); Данная функция принимает значение и выходную строку, размер строки и основание системы счисления. int number = 228; int radix = 16; char strToNum[5]; _itoa_s(number, strToNum, sizeof(strToNum), radix); cout << strToNum << endl;

Слайд 16





В итоге, что должны знать
Краткий конспект
strlen – длина строки
strcat – соединение строк
strcpy – копирование строки
strcmp – сравнение строк
strstr – поиск подстроки в строке
atoi – перевод строки в число
_itoa_s – перевод числа в строку
Описание слайда:
В итоге, что должны знать Краткий конспект strlen – длина строки strcat – соединение строк strcpy – копирование строки strcmp – сравнение строк strstr – поиск подстроки в строке atoi – перевод строки в число _itoa_s – перевод числа в строку

Слайд 17





Задачи
Функция 1. Введите строку и сообщите, сколько слов в ней. Считайте, что все слова в строке разделены ровно одним пробелом. 
Функция 2. Напишите программу, которая принимает строку и проверяет, является ли она палиндромом.
Функция 3. Написать программу, которая проверяет, является ли введенная с клавиатуры строка шестнадцатеричным числом.
Функция 4. Напишите программу, которая вычисляет введенное пользователем значение выражения типа A1 Z1 A2 Z2 A3 Z3 … Ai Zj, где Ai — целое число от 0 до 9, а Zj — знак + или -.
Описание слайда:
Задачи Функция 1. Введите строку и сообщите, сколько слов в ней. Считайте, что все слова в строке разделены ровно одним пробелом. Функция 2. Напишите программу, которая принимает строку и проверяет, является ли она палиндромом. Функция 3. Написать программу, которая проверяет, является ли введенная с клавиатуры строка шестнадцатеричным числом. Функция 4. Напишите программу, которая вычисляет введенное пользователем значение выражения типа A1 Z1 A2 Z2 A3 Z3 … Ai Zj, где Ai — целое число от 0 до 9, а Zj — знак + или -.

Слайд 18





Структуры
Структура - это совокупность переменных, объединенных одним именем, предоставляющая общепринятый способ совместного хранения информации. Объявление структуры приводит к образованию шаблона, используемого для создания объектов структуры. Переменные, образующие структуру, называются членами структуры. (Члены структуры также часто называются элементами или полями.)
Иначе говоря, структура – это определяемый программистом тип данных, состоящий из основных типов и уже существующих определенных типов.
Описание слайда:
Структуры Структура - это совокупность переменных, объединенных одним именем, предоставляющая общепринятый способ совместного хранения информации. Объявление структуры приводит к образованию шаблона, используемого для создания объектов структуры. Переменные, образующие структуру, называются членами структуры. (Члены структуры также часто называются элементами или полями.) Иначе говоря, структура – это определяемый программистом тип данных, состоящий из основных типов и уже существующих определенных типов.

Слайд 19





Конструкция
struct Name
{
type atrib;
// остальные элементы структуры   
} structVar1, structVar2, ...;
Где:
Name – название структуры
type atrib; - поле данных. Их может быть несколько
structVar1, structVar2 – глобальные переменные типа этой структуры
Описание слайда:
Конструкция struct Name { type atrib; // остальные элементы структуры } structVar1, structVar2, ...; Где: Name – название структуры type atrib; - поле данных. Их может быть несколько structVar1, structVar2 – глобальные переменные типа этой структуры

Слайд 20





Пример
struct student
{
char name[20];
char studak[15];
char facultet[6];
int age;
double stipendia;
};
int main() {
student Vasya;
int size = sizeof(Vasya);
cout << size << endl;
system("pause");
}
Описание слайда:
Пример struct student { char name[20]; char studak[15]; char facultet[6]; int age; double stipendia; }; int main() { student Vasya; int size = sizeof(Vasya); cout << size << endl; system("pause"); }

Слайд 21





Обращение к полям
Если объект структуры создан обычной переменной, то обращение к полю происходит как:
имя_переменной.имя_поля;
Если объект структуры создан через указатель, то обращение к полю происходит как:
имя_переменной->имя_поля;
Пример:
Vasya.age = 18;
Vasya.stipendia = 1337.228;
strcpy(Vasya.name, "Vasya Pupkin");
student *Petya = new student();
Petya->age = 17;
(*Petya).stipendia = 144.8;
Описание слайда:
Обращение к полям Если объект структуры создан обычной переменной, то обращение к полю происходит как: имя_переменной.имя_поля; Если объект структуры создан через указатель, то обращение к полю происходит как: имя_переменной->имя_поля; Пример: Vasya.age = 18; Vasya.stipendia = 1337.228; strcpy(Vasya.name, "Vasya Pupkin"); student *Petya = new student(); Petya->age = 17; (*Petya).stipendia = 144.8;

Слайд 22





Также разрешено инициализировать структуры подобным образом:
Также разрешено инициализировать структуры подобным образом:
student Lena = { "Lena", "01013789", "AVTF", 16, 1337.4 };
Структуры могут быть аргументом функции и ещё возвращаемым значением. 
void show(student &obj)
{
cout << "Name:      " << obj.name << endl;
cout << "Studak:    " << obj.studak << endl;
cout << "Facultet:  " << obj.facultet << endl;
cout << "Age:       " << obj.age << endl;
cout << "stipendia: " << obj.stipendia << endl;
}
Описание слайда:
Также разрешено инициализировать структуры подобным образом: Также разрешено инициализировать структуры подобным образом: student Lena = { "Lena", "01013789", "AVTF", 16, 1337.4 }; Структуры могут быть аргументом функции и ещё возвращаемым значением. void show(student &obj) { cout << "Name: " << obj.name << endl; cout << "Studak: " << obj.studak << endl; cout << "Facultet: " << obj.facultet << endl; cout << "Age: " << obj.age << endl; cout << "stipendia: " << obj.stipendia << endl; }

Слайд 23





Задачки на разбор
Дан тип комплексного числа:
struct Complex
{
int a;
int b;
};
Написать функции:
Показа числа в правильном виде
Сложение
Вычитание
Деление
Сравнение двух комплексных чисел
Описание слайда:
Задачки на разбор Дан тип комплексного числа: struct Complex { int a; int b; }; Написать функции: Показа числа в правильном виде Сложение Вычитание Деление Сравнение двух комплексных чисел

Слайд 24





Ещё задача на разбор
Создайте структуру окружности через структуру точки и для неё функции:
длины окружности 
площади окружности 
площади сектора с углом A.
Описание слайда:
Ещё задача на разбор Создайте структуру окружности через структуру точки и для неё функции: длины окружности площади окружности площади сектора с углом A.

Слайд 25





Мем в конце
Описание слайда:
Мем в конце



Похожие презентации
Mypresentation.ru
Загрузить презентацию