КулЛиб - Классная библиотека! Скачать книги бесплатно
Всего книг - 716417 томов
Объем библиотеки - 1424 Гб.
Всего авторов - 275491
Пользователей - 125277

Последние комментарии

Новое на форуме

Новое в блогах

Впечатления

yan.litt про серию За последним порогом

В целом средненько, я бы даже сказал скучная жвачка. ГГ отпрыск изгнанной мамки-целицельницы, у которого осталось куча влиятельных дедушек бабушек из великих семей. И вот он там и крутится вертится - зарабатывает себе репу среди дворянства. Особого негатива к нему нет. Сюжет логичен, мир проработан, герои выглядят живыми. Но тем не менее скучненько как то. Из 10 я бы поставил 5 баллов и рекомендовал почитать что то более энергичное.

Рейтинг: 0 ( 0 за, 0 против).
Lena Stol про Небокрад: Костоправ. Книга 1 (Героическая фантастика)

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

Рейтинг: 0 ( 1 за, 1 против).
Lena Stol про Батаев: Проклятьем заклейменный (Героическая фантастика)

Бросила читать практически в самом начале - неинтересно.

Рейтинг: 0 ( 1 за, 1 против).
Lena Stol про Чернов: Стиратель (Попаданцы)

Хорошее фэнтези, прочитала быстро и с интересом.

Рейтинг: 0 ( 1 за, 1 против).
Влад и мир про серию История Московских Кланов

Прочитал первую книгу и часть второй. Скукота, для меня ничего интересно. 90% текста - разбор интриг, написанных по детски. ГГ практически ничему не учится и непонятно, что хочет, так как вовсе не человек, а высший демон, всё что надо достаёт по "щучьему велению". Я лично вообще не понимаю, зачем высшему демону нужны люди и зачем им открывать свои тайны. Живётся ему лучше в нечеловеческом мире. С этой точки зрения весь сюжет - туповат от

  подробнее ...

Рейтинг: 0 ( 0 за, 0 против).

Рассказы о математике [Дмитрий Елисеев] (fb2) читать постранично, страница - 2


 [Настройки текста]  [Cбросить фильтры]

class="book">for p in range(1,10):

print (p)


Для сравнения, вот такой код без отступов работать не будет, и это важно помнить, например при копировании кода из этой книги:

for p in range(1,10):

print (p)

Вывод чисел от 1 до 9 с шагом 2:

for p in range(1,10,2):

print (p)


Си

Вывод чисел от 1 до 9:

      for(int i=1; i<10; i++) {

       printf("%d\n", i);

      }


Вывод чисел от 1 до 9 с шагом 2:

      for(int i=1; i<10; i+=2) {

       printf("%d\n", i);

      }


Массивы


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


Python:

Объявляем массив чисел:

values = [1,2,3,5,10,15,20]


Добавляем элемент в массив:

values.append(7)


Выводим массив на экран:

print (values)


Выводим элементы массива построчно:

for p in values:

print (p)


Это же можно сделать с помощью индексов (нумерация элементов массива начинается с 0):

for i in range(0,len(values)):

print (values[i])


Можно создать массив определенного размера, заполненный определенными числами. Создадим массив из 100 элементов, заполненный нулями.

values = [0.0] * 100

print (values)


Есть немного более сложный, но и более гибкий вариант создания массива. Создадим массив из 100 элементов, заполненный нулями:

values = [0.0 for i in range(100)]

Создадим массив, заполненный числами 0,1,..,99:

values = [i for i in range(100)]


Создадим массив, заполненный квадратами чисел:

values = [i*i for i in range(100)]


Создать двухмерный массив в Python также несложно:

matrix4x4 = [ [0,0,0,0], [0,0,0,0], [0,0,0,0], [0,0,0,0]]

matrix4x4[0][0] = 1

print (matrix4x4)


Аналогично вышеописанному способу, можно создать 2х-мерный массив 100x100:

values100x100 = [ [0.0 for j in range(100)] for i in range(100)]


Си:

Динамические массивы поддерживаются только в C++, статические массивы создаются так:


int values[7] = { 1,2,3,5,10,15,20 };

for(int i=0; i<7; i++) {

printf("%d\n", values[i]);

}


При желании можно слегка схитрить, если максимальный размер массива заранее известен.

int values[255] = { 1,2,3,5,10,15,20 }, cnt = 7;

for(int i=0; i<cnt; i++) {

printf("%d\n", values[i]);

}

values[cnt] = 7;

cnt++;


Можно пользоваться динамическим распределением памяти, хотя это немного сложнее:

int *valuesArray = (int*)malloc(10*sizeof(int));

valuesArray[0] = 1;

valuesArray[1] = 3;

valuesArray[2] = 15;

valuesArray = (int*)realloc(valuesArray, 25*sizeof(int));

valuesArray[20] = 555;

valuesArray[21] = 777;

for(int i=0; i<25; i++) {

printf("%d\n", valuesArray[i]);

}

free(valuesArray);


Важно заметить, что неинициализированные значения массива, например valuesArray[16], будут содержать “мусор”, некие значения которые были до этого в памяти. Си достаточно низкоуровневый язык, и такие моменты нужно учитывать. Хорошим тоном является инициализация всех переменных при их описании. Вот такой код формально не содержит ошибок:

int x;

printf("x=%d\n", x);


Однако при его запуске выведется значение 4196608, или 0, или 32, результат непредсказуем. В большой программе такие ошибки может быть сложно найти, тем более что проявляться они могут не всегда.


Арифметические операции


Сложение, умножение, деление:

x1 = 3

x2 = (2*x1*x1 + 10*x1 + 7)/x1


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

x3 = x1**10

print (x1,x2,x3)


Переменную также можно увеличить или уменьшить:

x1 += 1

x1 -= 10

print (x1)


Остаток от деления:

x2 = x1 % 6

print (x2)


Условия в Python кстати, задаются отступами, аналогично циклам:

print (x1)

if x1 % 2 == 0:

print("x1 четное число")

else:

print("x1 нечетное число")


Подсчитаем сумму элементов массива:

values = [1,2,3,5,10,15,20]

s = 0

for p in values:

s += p

print(s)


Также для этого можно воспользоваться встроенной функцией sum:

values = [1,2,3,5,10,15,20]

print(sum(values))


В Си вычисление суммы элементов массива выглядит так:

int sum = 0;

for(int i=0; i<cnt; i++) {

       sum += values[i];

      }

      printf("Sum=%d\n", sum);


Для более сложных операций в Python необходимо подключить модуль math. Вычисление квадратного корня:

import math


print (math.sqrt(x3))


Python может делать вычисления с большими числами, что достаточно удобно:

import math


x1 = 12131231321321312312313131124141

print (10*x1)

print (math.sqrt(x1))


Можно вывести даже факториал числа 1024, что не сделает