Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RFpro.ru: Программирование на языке Pascal


Хостинг портала RFpro.ru:
Московский хостер
Профессиональный ХОСТИНГ на базе Linux x64 и Windows x64

РАССЫЛКИ ПОРТАЛА RFPRO.RU

Лучшие эксперты данной рассылки

lamed
Статус: Академик
Рейтинг: 5342
∙ повысить рейтинг »
Орловский Дмитрий
Статус: Академик
Рейтинг: 5334
∙ повысить рейтинг »
Роман Селиверстов
Статус: Академик
Рейтинг: 2747
∙ повысить рейтинг »

/ КОМПЬЮТЕРЫ И СОФТ / Программирование / Pascal (Паскаль)

Номер выпуска:1186
Дата выхода:04.06.2011, 22:30
Администратор рассылки:Boriss (Академик)
Подписчиков / экспертов:174 / 174
Вопросов / ответов:2 / 3

Вопрос № 183417: Уважаемые эксперты! Пожалуйста, ответьте на вопрос: Как на Pascal ABC вычислить S=(2-1)/ctg2-(4+3)/ctg4+(6-5)/ctg6-...-(20+19)/ctg20. Спасибо....


Вопрос № 183418: Здравствуйте! Прошу помощи в следующем вопросе:Вычислить максимальную сумму кубов натуральных чисел, кратных 3 (3, 6, 9, …), меньшую 7000 Замечание: Провести решение двумя способами – используя цикл с предусловием WHILE_DO и цикл с постусловием RE...

Вопрос № 183417:

Уважаемые эксперты! Пожалуйста, ответьте на вопрос:
Как на Pascal ABC вычислить S=(2-1)/ctg2-(4+3)/ctg4+(6-5)/ctg6-...-(20+19)/ctg20. Спасибо.

Отправлен: 30.05.2011, 01:55
Вопрос задал: Посетитель - 376257 (Посетитель)
Всего ответов: 2
Страница вопроса »


Отвечает Роман Селиверстов (Академик) :
Здравствуйте, Посетитель - 376257!
program a;
var i,j:integer; s:real;
begin
s:=0; j:=1;
for i:=1 to 10 do
begin s:=s+j*(2*i-j*(2*i-1))*cos(2*i)/sin(2*i); j:=-j; end;
writeln(s);
end.

Ответ отправил: Роман Селиверстов (Академик)
Ответ отправлен: 30.05.2011, 02:05
Номер ответа: 267445
Украина, Львов
Организация: ЛРИГУ НАГУ при Президенте Украины
Адрес: Львов-Брюховичи
Адрес сайта: http://seliverstov.ucoz.ua/
Абонент Skype: seliverstov_r

Вам помог ответ? Пожалуйста, поблагодарите эксперта за это!
Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 267445 на номер 1151 (Россия) | Еще номера »
  • Отправить WebMoney:


  • Отвечает lamed (Академик) :
    Здравствуйте, Посетитель - 376257!
    Использование While и функции.
    Код :
    program b;
    { Вычислить S=(2-1)/ctg2-(4+3)/ctg4+(6-5)/ctg6-...-(20+19)/ctg20. }
    const
      n=10;
    var
      i,k:integer;
      s :real;
    function ctg(x: real): real;
    { возвращает значение котангенса }
    begin
      ctg := cos(x)/sin(x);
    end;
    
    begin
      s:=0;
      i:= 1;
      while (i<=n) do
        begin
          if odd(i) then
            k:= 1
          else
            k:= -4*i+1;
          s:=s+k*ctg(2*i); { или ctg(2.0*i) }
          i:= i+1;
        end;
      writeln('s=', s);
    end.

    Пример паботы
    Код :
    s=-91.3100927575937

    Удачи!

    Ответ отправил: lamed (Академик)
    Ответ отправлен: 30.05.2011, 09:52
    Номер ответа: 267452
    Россия, Ковров
    Тел.: +79107793141

    Вам помог ответ? Пожалуйста, поблагодарите эксперта за это!
    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 267452 на номер 1151 (Россия) | Еще номера »
  • Отправить WebMoney:


  • Вопрос № 183418:

    Здравствуйте! Прошу помощи в следующем вопросе:Вычислить максимальную сумму кубов натуральных чисел, кратных 3 (3, 6, 9, …), меньшую 7000
    Замечание: Провести решение двумя способами – используя цикл с предусловием WHILE_DO и цикл с постусловием REPEAT_UNTIL. Спасибо.

    Отправлен: 30.05.2011, 07:41
    Вопрос задал: Посетитель - 376257 (Посетитель)
    Всего ответов: 1
    Страница вопроса »


    Отвечает lamed (Академик) :
    Здравствуйте, Посетитель - 376257!
    Код :
    { Вычислить максимальную сумму кубов натуральных чисел, 
     кратных 3 (3, 6, 9, …), меньшую 7000 
     Замечание: Провести решение двумя способами – используя цикл с 
     предусловием WHILE_DO и цикл с постусловием REPEAT_UNTIL. }
    { Проверено ABC }
    const
      n=7000;
    var
      i, sum, a: integer;
    begin
      sum := 0;
      i:= 3;
      a:= i*i*i;
      while sum +a <= n do
        begin
          sum := sum+a;
          write(sum, ' ');
          
          i:= i+3;
          a:= i*i*i;
        end;
    
      writeln('WHILE_DO. Максимальная сумма ', sum);
    
      sum := 0;
      i:=3;
    {  a:=i*i*i; }
      repeat
        a:= i*i*i;
        sum := sum+a;
        i:=i+3;
      until sum>n;
      sum := sum-a;
      writeln('REPEAT_UNTIL. Максимальная сумма ', sum);
      readln; { Для Turbo-Pascal }
    end.

    Удачи!

    Ответ отправил: lamed (Академик)
    Ответ отправлен: 30.05.2011, 08:04
    Номер ответа: 267449
    Россия, Ковров
    Тел.: +79107793141

    Вам помог ответ? Пожалуйста, поблагодарите эксперта за это!
    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 267449 на номер 1151 (Россия) | Еще номера »
  • Отправить WebMoney:


  • Оценить выпуск »
    Нам очень важно Ваше мнение об этом выпуске рассылки!

    Задать вопрос экспертам этой рассылки »

    Скажите "спасибо" эксперту, который помог Вам!

    Отправьте СМС-сообщение с тестом #thank НОМЕР_ОТВЕТА
    на короткий номер 1151 (Россия)

    Номер ответа и конкретный текст СМС указан внизу каждого ответа.

    Полный список номеров »

    * Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи. (полный список тарифов)
    ** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
    *** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.



    В избранное