Мегаобучалка Главная | О нас | Обратная связь


Все значения передавать функциям в виде параметров.



2019-12-29 323 Обсуждений (0)
Все значения передавать функциям в виде параметров. 0.00 из 5.00 0 оценок




1. Ввести с клавиатуры целое число N. Используя рекурсию, распечатать сначала последовательность, состоящую из N букв 'А', а затем из N букв 'В'.

2.  Напечатать в обратном порядке последовательность чисел, признаком конца которой является 0.

3. Водится любое целое число b и вещественные a, c. Вычислить z=a  b +c b , используя рекурсивную функцию x  n                                1, если n = 0

                                                             x  n = 1/ x  -n , если n < 0

                                                                      x × x  n-1 , если n > 0          

4. Для N=12 найти числа Фибоначчи, которые вычисляются следующим образом: F(0)=1, F(1)=2, F(N)=F(N-2)+F(N-1)

5. Методом деления отрезка пополам найти с точностью EPS=0,0001 корень уравнения cos(2/x)-2*sin(1/x)+1/x=0

6. Даны целые числа m и n, где 0<=m<=n. Вычислить рекурсивно число сочетаний по формуле:

7. Дана последовательность положительных чисел, признаком конца которых служит отрицательное число. Используя рекурсию, подсчитать количество чисел и их сумму.

8. Дана последовательность ненулевых целых чисел, признаком конца которых служит 0. Используя рекурсию, напечатать сначала все отрицательные, а потом – все положительные числа этой последовательности.

9. Дан вектор Х из N вещественных чисел. Найти минимальный элемент вектора, используя вспомогательную рекурсивную функцию, находящую минимум среди последних элементов вектора Х, начиная с N-го.

10. Дана строка символов, в конце которой стоит точка. Напечатать строку в обратном порядке.

11. Задан вещественный массив из N. Упорядочить его по возрастанию методом быстрой сортировки: выбрать средний элемент массива и переставить элементы так, чтобы слева от выбранного элемента были меньшие, а справа только большие (т.о. выбранный элемент окажется на окончательном месте). Затем применить этот способ рекурсивно к левой и правой части массива.

12. Имеется 10 населенных пунктов. Дана последовательность пар чисел пар чисел I и J (I<J), указывающих, что I –ый J-ый пункты соединены дорогой. Признак конца этой последовательности - пара нулей. Используя рекурсию, определить, можно ли по этим дорогам попасть из 1-го пункта в N-ый.

КОНТРОЛЬНЫЕ ВОПРОСЫ

4.1. Что такое рекурсия?

4.2. Как меняются локальные и глобальные переменные в рекурсиях?

4.3. Где находится окончание рекурсии?

 

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

Структуры

1. ЦЕЛЬ РАБОТЫ: Приобретение практических навыков в составлении алгоритмов и программ со структурами.

ОСНОВНЫЕ СВЕДЕНИЯ

Структура – это фиксированное число элементов одного или нескольких типов. Т.е. в отличие от массивов, в которых содержатся элементы одного типа, в структурах могут содержаться элементы как одного, так и разных типов.  Элементами структуры могут быть базовые типы, массивы, указатели, структуры и т.д. Элементы структуры вместе с их описанием называются полями. Над полями можно выполнять действия, допустимые для данных этого типа.

Все структуры должны быть описаны до использования. Все идентификаторы полей в структуре должны быть различными.

Например, структуру Воок можно описать следующим образом:

struct card {char аuthor [15]; char title[20]; int year ; float cena;} Book;

или struct card { char аuthor [15]; char title[20]; int year ; float cena;};

stuct card Book;

    Тип структуры (например, card) вводит только шаблон и с его именем не связан никакой конкретный объект. Объект (например, структура Book) должен быть также объявлен. Обращение к полю структуры выполняется с помощью составного имени, которое состоит из имени_структуры . имени_поля. Например, присвоить значения элементам записи Author и Title можно так: Book.author= “Довгаль С.И.”; Book.title=”Турбо Паскаль V 7.0”;

Ввод цены книги с клавиатуры : scanf (“%f”, &Book.cena);

Можно создавать массив структур: Struct card bibl[100];

Обращение к полю элемента массива: bibl[i].title;

Пример: Дана информация о 10 товарах: название, цена, количество. Вычислить общую стоимость товара, название которого вводится с клавиатуры.

//lab7_1

#include <stdio.h>

#include <conio.h>

#include <string.h>

#define n 10

main()

{

 int i,k; float sum; //k-количество искомых товаров, sum- их общая стоимость.

struct tov {char name[10]; float c; int kol;} t; //Объявление структуры t

struct tov mag[n]; //объявление массива структур mag[n]

char nazv[10]; //Наименование искомого товара

clrscr();

printf(“\n Введите информацию о товарах \n“);

for (i=0;i<n;i++)

{ printf("\n наименование , цена, количество :  ");

scanf("%s %f %d",t.name,&t.c,&t.kol); //Заполнение информацией структуры t

mag[i]=t; //Присвоение i-му элементу массива структуры t целиком

}

printf("\n введите искомый товар: ");

scanf("%s",nazv);

for (i=0,sum=0,k=0;i<n;i++)

if (strcmp(mag[i].name,nazv)==0)

{ sum+=mag[i].c*mag[i].kol;

    k++;

}

printf("Товаров  %s  %d,  их стоимость  %5.2f ",nazv,k,sum);

getch();

}

ВЫПОЛНЕНИЕ РАБОТЫ

В соответствии с вариантом написать и выполнить программу.

Варианты заданий

1. Дана информация о пяти студентах. Запись имеет вид: фамилия, год рождения, факультет. Вывести дан­ные о студентах по факультетам.

2. Дана информация о пяти школах. Запись имеет вид: номер школы, год, количество выпускников, число поступивших в ВУЗы. Вывести данные об общем количестве выпускников и доле поступивших в ВУЗ.

3. Дана информация о пяти комнатах в общежитии. Запись имеет вид: фамилии, номер комнаты, факультет, площадь. Вывести данные о комнатах по факультетам, а также количество комнат на факультетах.

4. Дана информация о пяти рабочих цеха. Запись имеет вид: фамилия, размер зарплаты, стаж работы. Вывести данные о рабочем с наибольшей зарплатой и наименьшим стажем.

5. Дана информация о четырех вузах. Запись имеет вид: название вуза, число студентов, количество факультетов, коли­чество кафедр. Вывести данные об общем числе студентов, факультетов и кафедр.

6. Дана информация о шести вкладчиках в сберкассы. Запись имеет вид: фамилия, район, социальное положение, величина вклада. Вывести данные о том, сколько среди вкладчиков служащих, рабочих и колхозников.

7. Дана информация о пяти больных. Запись имеет вид: фамилия, возраст, пол, давление. Вывести данные о больных с повышен­ным давлением (больше 140) .

8. Дана информация о пяти квартирах. Запись имеет вид: фами­лия владельца, площадь, число комнат, этаж. Вывести данные о квартирах с площадью меньше 30 кв.м и подсчитать их ко­личество.

9. Дана информация о шести студентах. Запись имеет вид: фамилия, год рождения, место рождения, факультет. Вывести дан­ные о старших по возрасту студентах, предполагая что год рождения может быть одинаков.

10. Дана информация о пяти школах. Запись имеет вид: номер школы, год, количество выпускников, число поступивших в ВУЗы. Вывести данные о школе с самым большим отношением числа поступивших к числу выпускников.

11.  Дана информация о пяти комнатах в общежитии. Запись имеет вид: фамилии, номер комнаты, факультет, площадь. Вывести данные о комнате, в которой наименьшая площадь.

12.  Дана информация о пяти квартирах. Запись имеет вид: фами­лия владельца, площадь, число комнат, этаж. Вывести данные о квартирах с самой большой площадью и самой маленькой.

4. КОНТРОЛЬНЫЕ ВОПРОСЫ

4.1. Какие типы данных относятся к простым, какие к составным?

4.2. Как объявляются структуры и чем отличается структура от массива?

4.3 Как обращаться к полям структуры?

4.3. Какие операции допустимы над структурой в целом?

 



2019-12-29 323 Обсуждений (0)
Все значения передавать функциям в виде параметров. 0.00 из 5.00 0 оценок









Обсуждение в статье: Все значения передавать функциям в виде параметров.

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Организация как механизм и форма жизни коллектива: Организация не сможет достичь поставленных целей без соответствующей внутренней...
Личность ребенка как объект и субъект в образовательной технологии: В настоящее время в России идет становление новой системы образования, ориентированного на вхождение...
Модели организации как закрытой, открытой, частично открытой системы: Закрытая система имеет жесткие фиксированные границы, ее действия относительно независимы...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (323)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.006 сек.)