Алгоритмические языки и программирование

Содержание

Слайд 2

Часть 1

Часть 1

Слайд 3

Функции Функции - это базовые блоки Си, в которых выполняются разные

Функции

Функции - это базовые блоки Си, в которых выполняются разные

операции.
Стандартный вид функций следующий: тип-результата имя-функции (список параметров)
{
объявления;
инструкции;
тип-результата;
}
Слайд 4

Оператор выбора switch switch ( ) { case : ; break;

Оператор выбора switch

switch (<переменная>) {
    case <значение 1>:
        <ветвь 1>;
break;
    case <значение 2>:
        <ветвь

2>;
break;
    default:
        <действия по умолчанию>; break;
}

Оператор выбора switch является очень удобной заменой множественного использования операторов if.
Оператор switch сравнивает значение одной переменной с несколькими константами.
Основной формат для использования оператора множественного выбора switch case показан — ниже.
Значение переменной указанной в условии switch сравнивается со значениями, которые следуют за ключевым словом case. Когда значение в переменной, соответствует значению в строке с оператором case, компьютер продолжит выполнение программы с этого места.

Слайд 5

Функции #include #include int multiplication( int num1, int num2 ); //прототип

Функции

#include  
#include  
int multiplication( int num1, int num2 ); //прототип функции
int main()
{
  int num1;
  int num2;
 

setlocale (LC_All, "rus");
  printf("Введите два  числа для умножения: ");
  scanf("%d", &num1);
  scanf("%d", &num2);
  printf("Результат умножения %d\n", multiplication(num1, num2)); // вызов
  return 0;
}
int multiplication(int num1, int num2)  // определение функции
{
  return num1 * num2;
}

функции

Слайд 6

Оператор выбора switch #include int main() { int input; printf( "Что

Оператор выбора switch

#include
int main()
{
    int input;
printf( "Что бы сегодня посмотреть?\n" );
    printf( "1.

Стрела(Arrow)\n" );
    printf( "2. Сверхъестественное(Supernatural)\n" );
    printf( "3. Ходячие мертвецы(Walking Dead)\n" );
    printf( "4. Выход\n" );
    printf( "Ваш выбор: " );
    scanf( "%d", &input );
    switch ( input ) {
        case 1:            /* обратите внимание на двоеточие, точки сзапятой тут нет */
            printf("«His Death Was Just The Beginning»\n");
            break;
        case 2:
            printf("«Scary»\n");
            break;
        case 3:
            printf("«Fight the dead. Fear the living»\n");
            break;
        case 4:
            printf( "Сегодня смотреть ничего не будем :(\n" );
            break;
        default:
            printf( "Неправильный ввод.\n" );
    }
    getchar();
    return 0;
}
Слайд 7

Часть 2

Часть 2

Слайд 8

Явное и неявное преобразование типов данных В Cи различают явное и

Явное и неявное преобразование типов данных

В Cи различают явное и неявное

преобразование типов данных.
Неявное преобразование типов данных выполняет компилятор Си.
Явное преобразование данных выполняет сам программист.
Результат любого вычисления будет преобразовываться к наиболее точному типу данных, из тех типов данных, которые участвуют в вычислении.
Слайд 9

Неявное приведение типов

Неявное приведение типов

Слайд 10

Явное приведение типов float(15) / 2 ; // результат равен 7.5,

Явное приведение типов

float(15) / 2 ; // результат равен 7.5, число 15

преобразуется в вещественный тип данных float.
double(15) / 2; // результат равен 7.5 – тоже самое!!!
Слайд 11

Генератор случайных чисел rand() в Си Случайные числа в Си могут

Генератор случайных чисел rand() в Си

Случайные числа в Си могут быть сгенерированы

функцией rand() из стандартной библиотеки Си.
Функция rand() генерирует числа в диапазоне от 0 до RAND_MAX. 
RAND_MAX — это константа, определённая в библиотеке .
Для RAND_MAX = 32767, но оно может быть и больше, в зависимости от компилятора.
Слайд 12

Генератор случайных чисел rand() в Си // формула генерации случайных чисел

Генератор случайных чисел rand() в Си

// формула генерации случайных чисел по

заданному диапазону
int r;
r = firs_value + rand() % last_value;
// где firs_value - минимальное число из желаемого диапазона
// last_value - ширина выборки
Слайд 13

Генератор случайных чисел rand() в Си

Генератор случайных чисел rand() в Си

Слайд 14

Часть 2

Часть 2

Слайд 15

Рекурсивный вызов функций Рекурсия — вызов функции из неё же самой,

Рекурсивный вызов функций

Рекурсия — вызов функции из неё же самой, непосредственно (простая рекурсия) или

через другие функции (сложная или косвенная рекурсия), например, функция {A} вызывает функцию {B}, а функция {B} — функцию {A}. Количество вложенных вызовов функции называется глубиной рекурсии.
Слайд 16

Рекурсивный вызов функций #include /* printd: печатает n как целое десятичное

Рекурсивный вызов функций

#include
/* printd: печатает n как целое десятичное число

*/
void printd(int n);
int main(){
int n = 153;
printd(n);
getchar();
return 0;
}
void printd(int n){
if (n < 0) {
printf("-");
n = -n;
}
if (n / 10)
printd(n / 10);
printf("%d",n % 10);
}
Слайд 17

Лабораторные работы

Лабораторные работы

Слайд 18

Возведение в степень Напишите программу, которая будет возводить в степень числа

Возведение в степень

Напишите программу, которая будет возводить в степень числа в

заданном диапазоне.
Пример:

Введите диапазон от a до b и основание степени base:
a=3
b=5
base=2
Результат возведения в степень: 8, 16, 32

Примечание:
1. Использовать циклы
2. Использовать функции

Слайд 19

Пальцы Пользователь вводит порядковый номер пальца руки. Напишите программу, которая показывает название пальца на экране.

Пальцы

Пользователь вводит порядковый номер пальца руки. Напишите программу, которая показывает название

пальца на экране.
Слайд 20

Псевдослучайные числа Напишите программу, которая в соответствии с заданными числами 1,

Псевдослучайные числа

Напишите программу, которая в соответствии с заданными числами 1, или

2, или 3 будет генерировать пять псевдослучайных чисел в заданном диапазоне и записывать их в массив.
Массив выводить на экран.

Примечание:
1. Использовать switch();
2. Использовать массивы
3. Использовать функции srand(); и rand();
Дополнительно:
1. Использовать функции

Выберите режим работы программы: 1) Генерация числа от 1 до 5 2) Генерация числа от 5 до 10 3) Генерация числа от 5 до 100000
>2 Вывод: 5, 7, 6, 9, 8

Слайд 21

Поиск Заполните массив случайными числами. Пользователь вводит 2 числа, найти их

Поиск

Заполните массив случайными числами. Пользователь вводит 2 числа, найти их в

сгенерированном массиве.
Вывести эти числа из массива.
Слайд 22

Калькулятор Примечание: 1. Использовать switch(), для выбора операций; 2. Использовать функции

Калькулятор

Примечание:
1. Использовать switch(), для выбора операций;
2. Использовать функции для каждой операции;
3.

Использовать приведение типов, где необходимо;

Выберите режим работы программы: 1) Сложение 2) Вычитание 3) Деление
. . .
>2
Введите два числа: >2
>1
Ответ: 2

Напишите программу, которая реализует калькулятор из 6 математических операций.

Слайд 23

Числа Дано натуральное число n. Напишите программу, которая выведет все числа

Числа

Дано натуральное число n. Напишите программу, которая выведет все числа от

1 до n.

Примечание:
1. Использовать рекурсивную функцию;