I1
Автор Keily задал вопрос в разделе Другие языки и технологии
Помогите пожалуйста! Что означает эта запись и что за операция это? For i:=1 to n do и получил лучший ответ
Ответ от 0xDD[гуру]
Цикл делать что-то от 1 до N. То есть N раз.
Ответ от Tigraroma[гуру]
Инвариантные фрагменты кода
Оптимизация инвариантных фрагментов кода тесно связана с проблемой оптимального программирования циклов. Внутри цикла могут встречаться выражения, фрагменты которых никак не зависят от управляющей переменной цикла. Их называют инвариантными фрагментами кода. Современные компиляторы часто определяют наличие таких фрагментов и выполняют их автоматическую оптимизацию. Такое возможно не всегда, и иногда производительность программы зависит целиком от того, как запрограммирован цикл. В качестве примера рассмотрим следующий фрагмент программы (язык Turbo Pascal):
for i := 1 to n do
begin
...
for k := 1 to p do
for m := 1 to q do
begin
a[k, m] := Sqrt(x * k * m - i) + Abs(u * i - x * m + k);
b[k, m] := Sin(x * k * i) + Abs(u * i * m + k);
end;
...
am := 0;
bm := 0;
for k := 1 to p do
for m := 1 to q do
begin
am := am + a[k, m] / c[k];
bm := bm + b[k, m] / c[k];
end;
end;
Здесь инвариантными фрагментами кода являются слагаемое Sin(x * k * i) в первом цикле по переменной m и операция деления на элемент массива c[k] во втором цикле по m. Значения синуса и элемента массива не изменяются в цикле по переменной m, следовательно, в первом случае можно вычислить значение синуса и присвоить его вспомогательной переменной, которая будет использоваться в выражении, находящемся внутри цикла. Во втором случае можно выполнить деление после завершения цикла по m. Таким образом, можно существенно сократить количество трудоёмких арифметических операций.
[править] Приоритеты оптимизации
Инвариантные фрагменты кода
Оптимизация инвариантных фрагментов кода тесно связана с проблемой оптимального программирования циклов. Внутри цикла могут встречаться выражения, фрагменты которых никак не зависят от управляющей переменной цикла. Их называют инвариантными фрагментами кода. Современные компиляторы часто определяют наличие таких фрагментов и выполняют их автоматическую оптимизацию. Такое возможно не всегда, и иногда производительность программы зависит целиком от того, как запрограммирован цикл. В качестве примера рассмотрим следующий фрагмент программы (язык Turbo Pascal):
for i := 1 to n do
begin
...
for k := 1 to p do
for m := 1 to q do
begin
a[k, m] := Sqrt(x * k * m - i) + Abs(u * i - x * m + k);
b[k, m] := Sin(x * k * i) + Abs(u * i * m + k);
end;
...
am := 0;
bm := 0;
for k := 1 to p do
for m := 1 to q do
begin
am := am + a[k, m] / c[k];
bm := bm + b[k, m] / c[k];
end;
end;
Здесь инвариантными фрагментами кода являются слагаемое Sin(x * k * i) в первом цикле по переменной m и операция деления на элемент массива c[k] во втором цикле по m. Значения синуса и элемента массива не изменяются в цикле по переменной m, следовательно, в первом случае можно вычислить значение синуса и присвоить его вспомогательной переменной, которая будет использоваться в выражении, находящемся внутри цикла. Во втором случае можно выполнить деление после завершения цикла по m. Таким образом, можно существенно сократить количество трудоёмких арифметических операций.
[править] Приоритеты оптимизации
Ответ от Dim565[гуру]
Цикл-счетчик.
От i=1 до n (n задаете вы) выполняется условие, которое нужно прописать после do
Цикл-счетчик.
От i=1 до n (n задаете вы) выполняется условие, которое нужно прописать после do
Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с ответами на Ваш вопрос: Помогите пожалуйста! Что означает эта запись и что за операция это? For i:=1 to n do
Как по IP-адресу определить доменное имя?
nslookup (пробел) IP-Адрес
А, если в Интернете, сходите сюда:
подробнее...
Как узнать свой внешний IP адрес?
Пуск > Выполнить: "cmd" > ipconfig + Enter => IP-адрес:
подробнее...
Что такое фиксированный IP-адрес?
динамический IP-адрес, присваиваемый провайдером при каждом новом подключении компьютера к сети,
подробнее...
Как запретить соединение с определенными IP?
Создать новую локальную политику безопасности. Пуск - Панель управления - Администрирование -
подробнее...
спросили в Телефония
IP-телефония у МегаФон
у Мегафона такой услуги нет (Северо-Запад) , более того, если купить карту IP-телефонии, то
подробнее...
IP-телефония у МегаФон
у Мегафона такой услуги нет (Северо-Запад) , более того, если купить карту IP-телефонии, то
подробнее...
Ответ от 3 ответа[гуру]
Привет! Вот еще темы с похожими вопросами:
спросили в Апачи
Помогите настроить Apache на два, а лучше 3 web сервера, на одном ip.
Ну так ты все правильно скорее всего настроил, просто нужно было указать разные каталоги для
подробнее...
Помогите настроить Apache на два, а лучше 3 web сервера, на одном ip.
Ну так ты все правильно скорее всего настроил, просто нужно было указать разные каталоги для
подробнее...
определение ip
IP-адрес (ай-пи адрес, сокращение от англ. Internet Protocol Address) — уникальный идентификатор
подробнее...
Как выставить if, then, else в excel?
=ЕСЛИ (условие; выражение1;выражение2)
P.S: В англ. версии IF
подробнее...
спросили в Интернет Оперы
Кто подскажет плагин / расширение для смены IP в Опере, Internet Exployer?
в опере режим турбо вкл. и оно сразу меняет
подробнее...
Кто подскажет плагин / расширение для смены IP в Опере, Internet Exployer?
в опере режим турбо вкл. и оно сразу меняет
подробнее...
спросили в TCP/IP Модемы
как определить ip модема, если забыли?
стандартные (заводские) IP адреса модемов 192.168.1.1
стандартные (заводские) IP адреса у точки
подробнее...
как определить ip модема, если забыли?
стандартные (заводские) IP адреса модемов 192.168.1.1
стандартные (заводские) IP адреса у точки
подробнее...
спросили в Интернет Iphone
Подскажите - как узнать IP моего IPhone ? для соединения через Wifi
IP-адреса надо присвоить вручную адаперам Wi-Fi на компьютере и IPhone. Одному, например, 192. 168.
подробнее...
Подскажите - как узнать IP моего IPhone ? для соединения через Wifi
IP-адреса надо присвоить вручную адаперам Wi-Fi на компьютере и IPhone. Одному, например, 192. 168.
подробнее...
Как найти человека по ip адресу?
Да никак в подавляющем кол-ве случаев 🙂
Но можно попробовать следующее: берем IP идем сюда
подробнее...
спросили в Интернет
Где можно узнать диапазон IP-адресов разных стран?
Тут можно определить IP- адрес, вводишь и
подробнее...
Где можно узнать диапазон IP-адресов разных стран?
Тут можно определить IP- адрес, вводишь и
подробнее...
спросили в Интернет
как узнать свой ip адрес веб камеры?
#yaimg48608#
Если хотите узнать свой IP-адрес, пройдите по любой ссылке ниже:
IP-адрес
подробнее...
как узнать свой ip адрес веб камеры?
#yaimg48608#
Если хотите узнать свой IP-адрес, пройдите по любой ссылке ниже:
IP-адрес
подробнее...