Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.03.2014, 14:30   #1
AdelinaMango
Пользователь
 
Регистрация: 26.03.2014
Сообщений: 13
Восклицание Не могу до конца понять задание

сделала как бы начало, а вот что дальше делать не пойму
Реализовать алгоритм, вычисляющий N первых членов арифметической прогрессии. Вычисления прекращаются досрочно, если очередной элемент попадает в заранее заданный промежуток
PHP код:
#include "stdafx.h"
#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <math.h>
 
int main (void)
{
    
int idana1N;
        
printf("Vvedite d\n");
        
scanf_s("%d", &d);
        
printf("Vvedite kolichestvo chlenov progressii\n");
        
scanf_s("%d", &N);
        
printf("Vvedite a1\n");
        
scanf_s("%d", &a1);
 
        for (
i=0i<Ni++)
        {
            
an=a1+(d*i);
                
printf("%d"an);
        }
        
system("pause");
        return 
0;

AdelinaMango вне форума Ответить с цитированием
Старый 29.03.2014, 15:01   #2
Streletz
Старожил
 
Регистрация: 03.01.2014
Сообщений: 2,870
По умолчанию

Цитата:
Вычисления прекращаются досрочно, если очередной элемент попадает в заранее заданный промежуток
Можно проверить принадлежность элемента к заданному диапазону с помощь обычного оператора If. Если элемент входит в диапазон, досрочно выходить из цикла с помощью оператора break.
Streletz вне форума Ответить с цитированием
Старый 29.03.2014, 15:02   #3
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,285
По умолчанию

Код:
#include "stdafx.h"
#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <math.h>
 
int
main(void)
{
    int i, d, ai, a1, N, b1, b2;
    printf("Vvedite d\n");
    scanf_s("%d", &d);
    printf("Vvedite kolichestvo chlenov progressii\n");
    scanf_s("%d", &N);
    printf("Vvedite a1\n");
    scanf_s("%d", &a1);
    printf("Vvedite otrezok [b1, b2]\n");
    scanf_s("%d%d", &b1, &b2);
    for (i = 0, ai = a1; i < N && (ai < b1 || ai > b2); ++i) {
        ai = a1 + d * i;
        printf("%d", ai);
    }
    system("pause");
    return 0;
}
Не проверял.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 29.03.2014, 17:36   #4
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,964
По умолчанию

Арифметическая прогрессия, это сума всех предшествующих чисел.
1+2+3+4+5+6.....
В "форе" неверная формула.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder
Smitt&Wesson вне форума Ответить с цитированием
Старый 29.03.2014, 19:03   #5
AdelinaMango
Пользователь
 
Регистрация: 26.03.2014
Сообщений: 13
По умолчанию

Цитата:
Сообщение от Smitt&Wesson Посмотреть сообщение
Арифметическая прогрессия, это сума всех предшествующих чисел.
1+2+3+4+5+6.....
В "форе" неверная формула.
а что не верно то?
AdelinaMango вне форума Ответить с цитированием
Старый 29.03.2014, 19:14   #6
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,285
По умолчанию

Имхо, все верно. Думаю, Smitt&Wesson перепутал арифметическую прогрессию и сумму арифметической прогрессии.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 29.03.2014, 19:42   #7
AdelinaMango
Пользователь
 
Регистрация: 26.03.2014
Сообщений: 13
По умолчанию

Цитата:
Сообщение от BDA Посмотреть сообщение
Имхо, все верно. Думаю, Smitt&Wesson перепутал арифметическую прогрессию и сумму арифметической прогрессии.
согласна. вы мне очень помогли, безумно благодарна вам
AdelinaMango вне форума Ответить с цитированием
Старый 29.03.2014, 19:58   #8
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,964
По умолчанию

Цитата:
Сообщение от BDA Посмотреть сообщение
Имхо, все верно. Думаю, Smitt&Wesson перепутал арифметическую прогрессию и сумму арифметической прогрессии.
Думаю, не стоит обсуждать факт существания прогрессий Гауса и пр.
Опять не прав?
Возмите доказательства Слоуна.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder

Последний раз редактировалось Smitt&Wesson; 29.03.2014 в 20:02.
Smitt&Wesson вне форума Ответить с цитированием
Старый 29.03.2014, 20:35   #9
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,285
По умолчанию

Цитата:
Сообщение от Википедия
Арифмети́ческая прогре́ссия — последовательность чисел (членов прогрессии), в которой каждое число, начиная со второго, получается из предыдущего добавлением к нему постоянного числа d (шага, или разности прогрессии).
"факт существания прогрессий Гауса" - нагуглил только:
http://files.school-collection.edu.r...0129719128.htm
Цитата:
Похожим образом рассуждал, согласно легенде, маленький Карл Фридрих Гаусс, по праву называвшийся «королем математиков» (princeps mathematicorum). Когда учитель в школе дал ученикам задачу просуммировать все числа от 1 до 40, ученики стали последовательно прибавлять одно число к другому, а Гаусс быстро увидел, что 1 + 40 = 2 + 39 = 3 + 38 = 4 + 37 = ... = 19 + 22 = 20 + 21. Сумма чисел каждой пары равна 41, а всего пар 40/2 = 20, и сумма всех чисел во всех парах будет равна 20 ∙ 41 = 820. Естественно, точно так же можно рассуждать при любом четном количестве чисел n: при этом пар будет n/2, а сумма чисел в каждой паре (n + 1).
То есть, он вывел формулу суммы прогрессии.
"Возмите доказательства Слоуна." - гуглил, но не нашел ничего.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 29.03.2014, 20:49   #10
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,964
По умолчанию

Цитата:
Сообщение от BDA Посмотреть сообщение
"То есть, он вывел формулу суммы прогрессии.
"Возмите доказательства Слоуна." - гуглил, но не нашел ничего.
Вы меня правильнор поняли. Но, если есть желание, давайте обсудим это в параллельной ветке.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder
Smitt&Wesson вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не могу понять задание Орлов Никита Помощь студентам 2 09.12.2012 21:03
C++ не могу понять как сделать массив объектов одного класса в другом (задание внутри) Vladimir_Anatol Помощь студентам 2 12.03.2012 18:56
Объясните задание, не могу понять что от меня хотят) Aerial Общие вопросы C/C++ 5 11.12.2010 09:19
Не могу понять задание amandra Помощь студентам 11 16.10.2007 10:24
Не могу понять задание Юдифь Помощь студентам 2 12.12.2006 17:40