Array M. УЭИТ - Язык Си - руководство для начинающих

Здесь есть возможность читать онлайн «Array M. УЭИТ - Язык Си - руководство для начинающих» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Город: Москва, Год выпуска: 1988, ISBN: 1988, Издательство: Мир, Жанр: Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Язык Си - руководство для начинающих: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Язык Си - руководство для начинающих»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

M. УЭИТ   С. ПРАТА    Д. МАРТИН
Язык Си — руководство для начинающих

Язык Си - руководство для начинающих — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Язык Си - руководство для начинающих», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

printf(" %3d %7d\n" , ounces, cost);

}

Первые четыре строки результата работы программы будут выглядеть следующим образом:

унции стоимость

1 20

2 37

3 54

Мы воспользовались операцией "запятая" в первом и третьих выражениях: в первом случае она позволяет инициализировать переменные ouncesи cost; во втором - на каждой итерации увеличивать значение ouncesна 1, а costна 17 (величину константы NEXT). Все вычисления осуществляются в спецификации цикла for. Применение операции "запятая" не ограничено только циклами forно именно в них она используется особенно часто. Операция обладает одним дополнительным свойством: при ее использовании гарантируется, что выражения, к которым она применяется (т. е. выражения, разделенные запятой), будут вычисляться слева направо. Поэтому переменная ounces будет инициализирована до переменной cost. В данном примере это не имеет значения, но порядок инициализации мог бы оказаться существенным, если выражение, соответвующее cost, содержало бы переменную ounces. Символ "запятая" также используется как разделитель. Поэтому запятые в операторах: char ch, date;

РИС 84 Операция запятая и цикл for ИЛИ printf d dn chimps - фото 48

РИС. 8.4. Операция "запятая" и цикл for

ИЛИ

printf(" %d %d\n", chimps, chumps);

являются разделителями, а не знаками операции "запятая".

Резюме: наши новые операции

I. ОПЕРАЦИЯ ПРИСВАИВАНИЯ

Каждая из этих операций корректирует значение переменной слева от знака с помощью величины справа от него, в соответствии с указанной операцией. Ниже мы используем обозначение п.ч. для правой части, а л.ч. для левой части.

+= прибавляет величину п.ч. к переменной л.ч.

-= вычитает величину п.ч. из переменной л.ч.

*= умножает неременную л.ч. на величину п.ч.

/= делит переменную л.ч. на величину п.ч.

%= дает остаток от деления переменной л.ч. на величину и.ч.

ПРИМЕР:

rabbits *= 1.6;то же самое, что и rabbits * 1.6;

II. ДОПОЛНИТЕЛЬНЫЕ ОПЕРАЦИИ:ОПЕРАЦИЯ "ЗАПЯТАЯ"

Операция "запятая" связывает два выражения в одно и гарантирует, что самое левое выражение будет вычисляться первым. Обычно она используется для включения дополнительной информации в спецификацию цикла for.

Пример:

for(step == 2, fargo = 0; fargo < 1000; step *= 2)

fargo + = step;

Философ Зенон и цикл for

Посмотрим, как с помощью операции "запятая" можно разрешить старый парадокс. Греческий философ Зенон утверждал, что пущенная стрела никогда не достигнет цели. Сначала, говорил он, стрела пролетит половину расстояния до цели. После этого ей останется пролететь половину всего расстояния, но сначала она должна будет пролететь половину того, что ей осталось пролететь, и т. д. до бесконечности. Поскольку расстояние полета разбито на бесконечное число частей, для достижения цели стреле может потребоваться бесконечное время. Мы сомневаемся, однако, что Зенон вызвался бы стать мишенью для стрелы, полагаясь только на убедительность своего аргумента. Применим количественный подход и предположим, что за одну секунду полета стрела пролетает первую половину расстояния. Тогда за последующую 1/2 секунды она пролетит половину того, что осталось от половины, за 1/4 - половину того, что осталось после этого, и т д. Полное время полета представляется в виде суммы бесконечного ряда 1 + 1/2 + 1/4 + 1/8 + 1/16 -1- ... . Мы можем написать короткую программу для нахождения суммы первых нескольких членов.

/* Зенон*/

#define LIMIT 15

main ( )

{

int count;

float sum, x;

for(sum = 0.0, x = 1.0, count = 1; count <= LIMIT; count++, x *= 2.0)

{

sum + = 1.0/x;

printf(" sum = %f когдаcount = %d.\n" , sum, count);

}

}

В результате выполнения программы получим значения сумм, соответствующих первым 15 членам ряда:

sum = 1.000000 когда count = 1.

sum = 1.500000 когда count = 2.

sum = 1.750000 когда count = 3.

sum = 1.875000 когда count = 4.

sum = 1.937500 когда count = 5.

sum = 1.968750 когда count = 6.

sum = 1.984375 когда count = 7.

sum = 1.992188 когда count = 8.

sum = 1.996094 когда count = 9.

sum = 1.998047 когда count = 10.

sum = 1.999023 когда count = 11.

sum = 1.999512 когда count = 12.

sum = 1.999756 когда count = 13.

sum = 1.999878 когда count = 14.

sum = 1.999939 когда count = 15.

Можно видеть, что, хотя мы и добавляем новые члены, сумма, по-видимому, стремится к какому-то пределу. И действительно, математики показали, что при стремлении числа членов к бесконечности сумма ряда сходится к 2,0, что и демонстрируется нашей программой. Какая радость! Если бы Зенон оказался прав, движение было бы невозможно. (Но если бы движение было невозможно, то не было бы Зенона ).

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Язык Си - руководство для начинающих»

Представляем Вашему вниманию похожие книги на «Язык Си - руководство для начинающих» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Язык Си - руководство для начинающих»

Обсуждение, отзывы о книге «Язык Си - руководство для начинающих» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x