IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Задачи на While и Repeat.
kolydos
сообщение 21.01.2005 10:17
Сообщение #1


Гость






Привет, я полистал ваш форум и понял, что мне тут могут могут оказать качественную помощь. Если не сложно напишите пожалуйста решения следующих задач:

1. напишите программу, которая определяет максимальное число из последовательности положительных чисел. признак окончания ввода ноль.
2. Напишите программу, которая вычисляет среднее арифмитическое последовательности положительных чисел, которые вводятся с клавиатуры. Для окончания ввода использовать ноль.
3. сколько слогаемых войдет в сумму пока она не привысит заданного А?
S=1+1/2+1/3+...
4. Сколько слогаемых войдет в сумму, прежде чем она привысит А?
S=2/1+3/2+4/3+5/4...
5. Дано целое m. получить наибольшее целое к, при котором три в степени к будет строго больше m.
6. Среди чисел вида:0,25; 0,25*1,25; 0,25*1,25*2,25;... найти первое! число большее заданного А.

Просьба особо не мудрить, это для первого курса и заранее огромное спасибо unsure.gif
 К началу страницы 
+ Ответить 
volvo
сообщение 21.01.2005 10:44
Сообщение #2


Гость






Цитата(kolydos @ 21.01.05 9:17)
я полистал ваш форум и понял, что мне тут могут могут оказать качественную помощь...
Просьба особо не мудрить

У меня тоже просьба: в следующий раз не "листать" форум, а пользоваться поиском - по крайней мере 90% этих задач уже решались на форуме...
 К началу страницы 
+ Ответить 
klem4
сообщение 21.01.2005 13:55
Сообщение #3


Perl. Just code it!
******

Группа: Модераторы
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


1)
Код
uses crt;
var x:array[1..100] of integer;
   i,j:integer;
   nfind:integer;
   flag:boolean;

Begin
  clrscr;
  flag:=true;
  while not(x[j]=0) do
   begin
      inc(j);
      readln(x[j]);
   end;
  i:=1;
  nfind:=0;
  while (i<=j)or(nfind=0) do
   begin
      if x[i]>0 then
       begin
          if nfind=0 then nfind:=i;
          if x[i]>x[nfind] then
           nfind:=i
       end;
      inc(i);
  end;
  writeln;
  writeln('max=',x[nfind]);
readln;
end.


2)
Код
uses crt;
var x:array[1..100] of integer;
  i,j,s,sr:integer;
  nfind:integer;
  flag:boolean;

Begin
 clrscr;
 flag:=true;
 while not(x[j]=0) do
  begin
     inc(j);
     readln(x[j]);
  end;
 for i:=1 to j-1 do
  inc(s,x[i]);

 writeln;
 writeln('sr=',s/(j-1):2:3);
readln;
end.


3)
Код
uses crt;
var k,n:integer;
  s,a:extended;
Begin
 clrscr;
 s:=0;
 k:=0;
 n:=0;
 readln(a);
 while not(s>a) do
  begin
     inc(n);
     inc(k);
     s:=s+1/k;
  end;
  writeln;
  writeln('n=',n);
  readln;
end.


4)
Код
uses crt;
var k,n:integer;
  s,a:extended;
Begin
 clrscr;
 s:=0;
 k:=0;
 n:=2;
 readln(a);
 while not(s>a) do
  begin
     inc(k);
     s:=s+n/(n-1);
     inc(n);
  end;
  writeln;
  writeln('k=',k);
  readln;
end.


5)
Код
uses crt;
var m,k:integer;
begin
 clrscr;
 readln(m);
 k:=0;
 while not(exp(k*ln(3))>m) do
  inc(k);
 writeln('k=',k);
 readln;
end.


6)
Код
uses crt;
const n=0.25;
var a,p:extended;
   k:integer;

Begin
  clrscr;
  readln(a);
  k:=0;
  p:=n;

  while not(p>a) do
   begin
      inc(k);
      p:=p*(k+n);
   end;
  writeln;
  writeln('First=',p:2:3);
  readln;
end.



Сообщение отредактировано: klem4 - 21.01.2005 15:02


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 21.01.2005 14:25
Сообщение #4


Гость






klem4
Вопрос: в решении первой программы зачем массив? Написано только про последовательность, но хранить-то ее не надо...
Тогда делаем проще (Задача №1):
Код
uses crt;
var
 max, x: integer;
Begin
 clrscr;
 max := 0;
 repeat
   readln(x);
   if x <> 0 then
     if x > max then max := x
 until x = 0;
 writeln('max = ',max);
 readln;
end.


Сообщение отредактировано: volvo - 21.01.2005 14:26
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 19.07.2025 18:12
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"