Модераторы: Poseidon

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [Матан] Прогресии 
V
    Опции темы
Ak47black
  Дата 14.3.2008, 16:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



Здравствуйте.
Помогите пожалуйста найти решение и понять как можно решить следующую задачку 
user posted image
Мне очень интересно само решение (желательно как можно подробнее)
PM MAIL   Вверх
Christoph
Дата 14.3.2008, 18:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 667
Регистрация: 23.1.2008
Где: Харьков

Репутация: 2
Всего: 11



Тут есть небольщая закономерность.....последние числа строки увеличиваются на еденицу это 2,3,4,5,6....если например шестая строка, то послдений элемент будет на 6 меньше чем последний элемент пятой строки..
Теперь как бы придумать так чтоб находить последнией элемент строки....В голове что то крутиться но не могу додумать :( А если найти последний элемент, то вычиатем n, записываем в переменную, потом зная конечное число и первое в строке можно найти b=a2-a1;
Ааа может так сделать
Код

for (i=1, k=0;i!=n;i++,k++) // n - номер строки
{
 A1[i+1]=i+k;
 x=A1[i+1]; // запоминаем последее число
}
y1=x-n; // первое число строки
y2=y+1; // Второе чилос строки
b=y2-y1; // подсчитываем b


Дальше формулу суммы не помню....


--------------------
user posted image
PM MAIL ICQ   Вверх
Ak47black
Дата 14.3.2008, 18:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



Тут математика, а не паскаль.  smile 
PM MAIL   Вверх
Christoph
Дата 14.3.2008, 19:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 667
Регистрация: 23.1.2008
Где: Харьков

Репутация: 2
Всего: 11



Тут я расписал....как все сделать математически...а код вроде Си))


--------------------
user posted image
PM MAIL ICQ   Вверх
Ak47black
Дата 15.3.2008, 12:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



Ктонибудь может реально помоч?
PM MAIL   Вверх
Christoph
Дата 15.3.2008, 14:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 667
Регистрация: 23.1.2008
Где: Харьков

Репутация: 2
Всего: 11



Хм...а чем тебе моё решние не нравится?  smile 


--------------------
user posted image
PM MAIL ICQ   Вверх
under_sun
Дата 15.3.2008, 14:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 141
Регистрация: 3.10.2007
Где: Ебург

Репутация: 7
Всего: 17



1) Найдем первое число, с которого начинается n-ая строка.
Оно равно количеству чисел до n-ой строки + 1: a = (n-1)*(1 + (n-1))/2 + 1
2) Последнее число в n-ой строке равно b = a + n - 1.
3) Тогда по формуле суммы арифметической прогресси найдем сумму чисел в n-ой строке:
S(n) = (a + b)*n/2 = (2a + n - 1)*n/2 = (n(n-1) + 2 + n - 1)*n/2 = (n^3 + n)/2
--------------------
TMTOWTDI
PM MAIL ICQ   Вверх
Ak47black
Дата 16.3.2008, 18:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



Чтото ответ несходится.
У меня есть ответ
Но я немогу понять как вывести формулу n-ой строки для последниго числа.
user posted image

Это сообщение отредактировал(а) Ak47black - 16.3.2008, 19:00
PM MAIL   Вверх
Optimus
Дата 16.3.2008, 23:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 186
Регистрация: 1.9.2007

Репутация: 9
Всего: 14



Цитата(Ak47black @  16.3.2008,  18:57 Найти цитируемый пост)
Чтото ответ несходится.

Код

(n^3 + n)/2 = ((n^2 + 1)n)/2


Цитата(Ak47black @  16.3.2008,  18:57 Найти цитируемый пост)
Но я немогу понять как вывести формулу n-ой строки для последниго числа.

Цитата(under_sun @  15.3.2008,  14:39 Найти цитируемый пост)
1) Найдем первое число, с которого начинается n-ая строка.
Оно равно количеству чисел до n-ой строки + 1: a = (n-1)*(1 + (n-1))/2 + 1
2) Последнее число в n-ой строке равно b = a + n - 1.


--------------------
"постановка задачи наполовину решает саму задачу"
PM MAIL   Вверх
under_sun
Дата 17.3.2008, 13:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 141
Регистрация: 3.10.2007
Где: Ебург

Репутация: 7
Всего: 17



Цитата(Ak47black @  16.3.2008,  18:57 Найти цитируемый пост)
Чтото ответ несходится.

Ответ сходится, просто у меня сначала находится первое число n-й строки, а потом последнее, а у тебя наоборот.
Цитата(Ak47black @  16.3.2008,  18:57 Найти цитируемый пост)
Но я немогу понять как вывести формулу n-ой строки для последниго числа.

Последнее число в n-ой строке находится как количество чисел в этих n строках.
Т.е. в первой - 1, во второй - 2 ... в n-ой - n. Поэтому в твоем ответе общее количество чисел в n-строках находят по сумме арифметической прогресии.
--------------------
TMTOWTDI
PM MAIL ICQ   Вверх
Ak47black
Дата 17.3.2008, 13:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



Пардон  smile 
Большое спасибо за помощь. + 
PM MAIL   Вверх
Ak47black
Дата 17.3.2008, 15:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



Я что-то всеровно немогу понять этот момент
Как найти
Цитата

количеству чисел до n-ой

Какую формулу следует использовать?

Это сообщение отредактировал(а) Ak47black - 17.3.2008, 20:51
PM MAIL   Вверх
Ak47black
Дата 18.3.2008, 17:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



Можете ктонибудь описать
Цитата

1) Найдем первое число, с которого начинается n-ая строка.
Оно равно количеству чисел до n-ой строки + 1: a = (n-1)*(1 + (n-1))/2 + 1

вот эту формулу, как вывести?

Это сообщение отредактировал(а) Ak47black - 18.3.2008, 17:56
PM MAIL   Вверх
Aloha
Дата 18.3.2008, 19:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


.
**


Профиль
Группа: Участник Клуба
Сообщений: 351
Регистрация: 14.5.2006

Репутация: 97
Всего: 165



Ak47black

Можно так рассуждать:
Пусть у нас есть матрица (к примеру 4 х 4) вида:
1 0 0 0
2 3 0 0
4 5 6 0
7 8 9 10
(это та же твоя треугольная таблица, только дополненная нулями до квадратной матрицы).
Последнее число последней строки в этой матрице =10. Причем интересно то, что в этой матрице ровно 10 ненулевых элементов. Т.е., если мы сможем подсчитать число ненулевых элементов в подобной матрице, мы узнаем, чему равен последний элемент последней строки.
Всего в матрице 4*4 = 16 элементов. На главной диагонали 4 элемента. Тогда под главной диагональю (равно как и над ней) будет (4*4 – 4)/2 = 6 элементов – в нашем случае это:
2
4 5
7 8 9
А всего ненулевых элементов (4*4 – 4)/2 + 4 = 6 + 4 = 10
Т.о. в матрице n х n, устроенной по такому принципу как наша будет
(n*n – n)/2 + n = (n² + n)/2 = n(n + 1)/2 ненулевых элементов.
Другими словами, последний элемент в n-й строке в нашей треугольной таблице будет равен
n(n + 1)/2.
Дальше, в n-й строке n элементов и первый элемент отличается от последнего на  (n – 1).
Тогда первый элемент n-й строки будет равен:
n(n + 1)/2 – (n – 1) = (n – 1)n/2 + 1


PM   Вверх
under_sun
Дата 19.3.2008, 16:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 141
Регистрация: 3.10.2007
Где: Ебург

Репутация: 7
Всего: 17



Цитата(Ak47black @  18.3.2008,  17:55 Найти цитируемый пост)

1) Найдем первое число, с которого начинается n-ая строка.
Оно равно количеству чисел до n-ой строки + 1: a = (n-1)*(1 + (n-1))/2 + 1

вот эту формулу, как вывести?

Ранее я уже пытался объяснить, как найти послднее число в n-ой строке:
Цитата(under_sun @  17.3.2008,  13:03 Найти цитируемый пост)
Последнее число в n-ой строке находится как количество чисел в этих n строках.
Т.е. в первой - 1, во второй - 2 ... в n-ой - n. Поэтому в твоем ответе общее количество чисел в n-строках находят по сумме арифметической прогресии. 

т.е. по формуле арифметической прогресии (1+n)n/2.
в данном случае надо найти последнее число в n-1 строке - по той же формуле, заменив n на n-1.
Прибавив 1, найдем первое число в n-ой строке. 

--------------------
TMTOWTDI
PM MAIL ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Центр помощи | Следующая тема »


 




[ Время генерации скрипта: 0.1334 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.