Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Основы алгоритмизации и программирования. В 2 ч. Ч. 1. Задачи и упражнения

Покупка
Артикул: 799086.01.99
Доступ онлайн
150 ₽
В корзину
В первой части практикума помещены задания по программированию линейных, разветвляющихся, циклических процессов, алгоритмов с использованием массивов и рассматриваются примеры выполнения этих заданий на языках Паскаль и С#. Излагаемый материал рекомендуется использовать в ходе практических и лабораторных занятий, при выполнении домашних работ и при подготовке к зачету. Адресовано студентам, обучающимся по направлениям подготовки «Химия» и «Фундаментальная и прикладная химия».
Коврижных, А. Ю. Основы алгоритмизации и программирования. В 2 ч. Ч. 1. Задачи и упражнения : учебно-методическое пособие / А. Ю. Коврижных, Е. А. Конончук, Г. Е. Лузина ; М-во образования и науки Рос. Федерации, Урал. федер. ун-т. - Екатеринбург : Изд-во Уральского ун-та, 2016. - 52 с. - ISBN 978-5-7996-1888-9. - Текст : электронный. - URL: https://znanium.com/catalog/product/1936341 (дата обращения: 26.04.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов. Для полноценной работы с документом, пожалуйста, перейдите в ридер.
Министерство образования и науки российской Федерации 

уральский Федеральный университет  
иМени первого президента россии б. н. ельцина

а. Ю. коврижных 
е. а. конончук 
г. е. лузина

основы алгоритМизации 
и програММирования

практикум
в двух частях

Часть 1. задачи и упражнения

рекомендовано методическим советом урФу 
в качестве учебно-методического пособия для студентов, 
обучающихся по программам бакалавриата и специалитета 
по направлениям подготовки 04.03.01 «Химия», 
04.05.01 «Фундаментальная и прикладная химия»

екатеринбург 
издательство уральского университета 
2016

удк 004.4(075.5)
 
к 568

р е ц е н з е н т ы:

и. н. к а н д о б а, кандидат физико-математических наук, 
старший научный сотрудник отдела прикладных проблем управления 
(институт математики и механики им. н. н. красовского уро ран);

г. б. з а х а р о в а, кандидат технических наук, доцент, 
заведующий кафедрой прикладной информатики 
(уральский государственный архитектурно-художественный университет)

Коврижных, А. Ю.
к 568  
основы алгоритмизации и программирования : практи-
кум : [учеб.-метод. пособие]. в 2 ч. Ч. 1. задачи и упражнения / 
а. Ю. коврижных, е. а. конончук, г. е. лузина ; М-во образова-
ния и науки рос. Федерации, урал. федер. ун-т. — екатеринбург : 
изд-во урал. ун-та, 2016. — 52 с. 

ISBN 978-5-7996-1888-9
ISBN 978-5-7996-1886-5 (часть 1)

в первой части практикума помещены задания по программирова-
нию линейных, разветвляющихся, циклических процессов, алгоритмов 
с использованием массивов и рассматриваются примеры выполнения этих 
заданий на языках паскаль и с#.
излагаемый материал рекомендуется использовать в ходе практиче-
ских и лабораторных занятий, при выполнении домашних работ и при под-
готовке к зачету.
адресовано студентам, обучающимся по направлениям подготовки 
«Химия» и «Фундаментальная и прикладная химия».

удк 004.4(075.5)

© уральский федеральный университет, 2016
ISBN 978-5-7996-1888-9
ISBN 978-5-7996-1886-5 (часть 1)

От АвтОрОв

цель данного практикума – оказать помощь студентам в орга-
низации самостоятельной работы при освоении разделов обра-
зовательной программы по информатике, посвященных осно-
вам алгоритмизации и программирования, и дать преподавателю 
необходимый минимум материала для проведения лабораторных 
и практических занятий.
в процессе многолетнего преподавания информатики у авто-
ров сложилось убеждение, что для закрепления знаний, полу-
ченных на лекциях, студентам необходимо подробно разбирать 
типовые задачи в рамках практических занятий и выполнять 
индивидуальные задания по каждой теме.
несмотря на то, что сегодня существует большое количество 
литературы, содержащей задачи по алгоритмизации и програм-
мированию, авторы пособия, основываясь на собственном опыте 
проведения занятий по курсу «информатика» для студентов, при-
обретающих специальности естественно-научных направлений, 
сформировали перечень задач и упражнений, а также набор алго-
ритмов для расчетно-графических работ, которые необходимы 
именно этой целевой группе. Часть приведенных задач и приме-
ров заимствована из хорошо зарекомендовавших себя источников 
(задачи по программированию / с. а. абрамов [и др.]. М. : наука, 
1998; пильщиков в. н. сборник упражнений по языку паскаль : 
учеб. пособие для вузов. М. : наука, 1989).
практикум состоит из двух частей. 
первая часть содержит задачи по основным темам курса 
«информатика», читаемому студентам направлений подготовки 
«Химия» и «Фундаментальная и прикладная химия», – по про-
граммированию линейных, разветвляющихся, циклических про-
цессов, алгоритмов с использованием массивов. каждая тема 
начинается с разбора типовой задачи, примера построения алго-

ритма и примера программы. задания не ориентированы на какой-
либо конкретный язык программирования. для типовых задач 
приведены тексты программ на языках паскаль и с#. Материал 
первой части рекомендуется использовать в ходе прак тических 
и лабораторных занятий, при выполнении домашних работ и при 
подготовке к зачету.
вторая часть практикума содержит расчетно-графические 
работы по рассматриваемым темам, необходимые теоретические 
сведения и примеры выполнения типового задания и ориентиро-
вана на самостоятельную подготовку студентов.
для более глубокого изучения дисциплины полезно обра-
щаться к приведенной в обеих частях практикума рекомендуемой 
литературе.

введение

современное изучение химии практически всегда связано 
с применением или разработкой алгоритмов, для реализации 
которых необходимы программные инструментальные средства. 
знание современных информационных технологий и умение 
пользоваться ими являются обязательными требованиями к квали-
фицированному специалисту-химику.
при изучении любого языка программирования в первую оче-
редь следует освоить его базовые конструкции, затрагивающие 
реализацию линейных алгоритмов, программирование разветвле-
ний и циклов. с одной стороны, для этого нужны минимальные 
знания из курса математики в объеме программы средней школы, 
а с другой – необходимо усвоение основных простых и составных 
типов данных изучаемого языка программирования. 
на практических занятиях обсуждаются основные этапы 
решения на компьютере любой задачи. Этими этапами являются:
1) постановка задачи; 
2) математическая формализация; 
3) построение алгоритма; 
4) составление программы на языке программирования; 
5) отладка и тестирование программы.
на этапе постановки задачи должно быть четко определено, 
что дано и что требуется найти. студенту следует обратить внима-
ние на следующие аспекты: понятно ли ему условие задачи, какие 
исходные данные известны и что нужно определить.
на втором этапе дается математическое описание задачи. 
строится математическая модель – система математических соот-
ношений (формул, уравнений, неравенств и т. д.), связывающих 
результаты с исходными данными.
на третьем этапе осуществляется построение алгоритма – 
четкой инструкции, задающей необходимую последовательность 

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

1. ПрОгрАммирОвАние  
линейных АлгОритмОв

л и н е й н ы й  а л г о р и т м  — это описание действий, которые 
выполняются однократно в заданном порядке.

Пример типовой задачи

для заданных a и b вычислить:

3
3
10,
sin( )
cos(
),

1.

z
x
y
y
b
a
x

x
a


=
+
+

=
−
+


=
+


Блок-схема алгоритма

приведена на рис. 1.

Конец 

Начало 

a, b 

 

 

x, y, z 

sin( )
cos(
)
y
b
a
x
=
−
+

1
x
a
=
+

3
3
10
z
x
y
=
+
+

рис. 1. блок-схема линейного алгоритма

текст программы на языке Паскаль

program prim1;
var a, b, x, y, z: real;
begin
write('введите a=');
readln(a);
write('введите b=');
readln(b);
x := sqrt(abs(a + 1));
y := sin(b) – cos(a + x);
z := sqr(x)*x + sqr(y)*y + 10;
writeln('x=', x:6:2);
writeln('y=', y:6:2);
writeln('z=', z:6:2)
end.

текст программы на языке С#

using System;
namespace ConsoleApplication18
{
class Program
{
static void Main(string[] args)
{
Console.Write("введите a=");
double a = double.Parse(Console.ReadLine());
Console.Write("введите b=");
double b = double.Parse(Console.ReadLine());
double x = Math.Sqrt(Math.Abs(a + 1));
double y = Math.Sin(b) − Math.Cos(a + x);
double z = Math.Pow(x,3) + Math.Pow(y,3) + 10;
Console.WriteLine("x=" + x.ToString("E"));
Console.WriteLine("y=" + y.ToString("E"));
Console.WriteLine("z=" + z.ToString("E"));
Console.ReadLine();
}
}
}

Задачи

1. известны первый и пятый члены арифметической прогрессии. 
найти величину члена прогрессии с номером N и сумму 
N членов.
2. известны члены арифметической прогрессии с номерами N 
и M. найти сумму членов с номерами от M до N (считать M < N).
3. заданы первый член и знаменатель геометрической прогрессии. 
найти сумму членов с номерами от заданного номера K 
до заданного номера P (считать K < P).
4. повесть рэя брэдбери называется «451 градус по Фаренгейту». 
напечатать название повести в градусной мере по цельсию. 
Формула перевода:

(
)
C
F

5
32 .
9
t
t
=
−

5. в классе N учеников. после контрольной работы было 
получено: А – пятерок, В – четверок, С – двоек, остальные тройки. 
найти процент троек.
6. для заданных значений вычислить результат:

3
2
1) 100
92
;k
−
+
1 cos ( )
2)
;
2
x
−

2

/2
ln (
)
3)
;
5 / 4
x
x
x

x
e
−
+
(
)

2
2
3
4)
sin ( )
cos
;
x
y
+

2
2
5)
4
;
x
x
y
+
+
1/2
6)
(
);
e
x
−
− α

(
)

2
7) ctg ( )
sin
1 ;
x
x
−
+

3

0,25(
)
8)
.
1
lg ( )
8
10n

a
b
b
b

c
d

+

−

−
+
−

7. заданы x, y, z. вычислить a, b, если:

3

2
2

1
1)
,
1
2
4

x
y
a
x
y

−
−
=
+
+

(
3)
arctg ( )
;
x
b
x
z
e−
+


=
+



1

2
3
2)
,
1
tg ( )

ye
a
x y
z

−
+
= +
−

3
2
(
)
1
;
2
3

y
x
y
x
b
y
x
−
−
= +
−
+
+

2

2cos
6
3)
,
1
sin ( )
2

x
a
y

π


−




=
+

2

2
1
.

3
5

z
b
z
= +
+

8. для x = –  вычислить значение многочлена по схеме 
горнера:

[
]

3
2
5
70
14
(5
70)
14
.
z
x
x
x
x
x
x
=
+
+
=
+
+

9. заданы три числа a, b, c. вычислить их среднее арифметическое:


3
a
b
c
p
+
+
=

и среднее геометрическое: 

3
.
q
abc
=

10. заданы R, r, h – измерения усеченного конуса. вычислить 
площадь поверхности и объем усеченного конуса по формулам:

2
2

2
2

2
2

(
)
;

1
(
) ;
3

(
) .

S
R
r l
R
r

V
R
r
Rr h

l
h
R
r

= π
+
+ π
+ π

=
π
+
+

=
+
−

Доступ онлайн
150 ₽
В корзину