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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.11.2010, 08:27   #1
xSKYx
Новичок
Джуниор
 
Регистрация: 17.11.2010
Сообщений: 2
По умолчанию Проблема с турбо паскаль

Здраствуйте есть несколько задачек, очень прошу помоч решить.

1)Задача на оператор If.

Даны 2 действительных числа X и Y.Если X и Y положительны, но их произведение меньше меньше 100, то оба числа заменить нулями, если хотябы одно из них отрицательно, то заменить их абсолютными значениями, в противном случае минимальное число оставить без изменения, а максимальное возвести в квадрат.

2)Массив.

Даны: натуральные числа k,m, действительные числа a1, a2,...ak и b1,b2,...bm. Среди a1...ak нет повторяющихся членов, Нет их и среди b1...bm.
Найти сумму тех членов последовательности b1...bm которые входят и в последовательность a1...ak

3) массив.
В массиве действительных чисел подсчитать количество элементов больше разности максимального и минимального.

4)Строки.
Дана последовательность символов, заканчивающихся восклицательным знаком. Подсчитать количество букв S в третьем слове данной последовательности (слова разделяются одним или несколькими пробелами)
xSKYx вне форума Ответить с цитированием
Старый 17.11.2010, 11:44   #2
GetMax
Форумчанин
 
Регистрация: 21.10.2010
Сообщений: 588
По умолчанию

xSKYx,а че так "мало" задач написали? Могли бы штук 10 или 15 написать. Задачи то в общем постейшие. Покажите что вы написали и будет вам помощь
Пользователь не знает, чего он хочет, пока не увидит то, что он получил.
Для благодарностей WMR R145235935681
GetMax вне форума Ответить с цитированием
Старый 17.11.2010, 11:58   #3
Риндера
Delphi, учу С
Форумчанин
 
Аватар для Риндера
 
Регистрация: 20.10.2010
Сообщений: 178
По умолчанию

1)
Код:
if ((x*y) > 0) and ((x*y) < 100) then ... ;
if (x*y) < 0 then ... else ... ;
2)
Код:
for i := 1 to m do
  for j := 1 to k do
    if b[i] = a[j] then inc(sum)
3)
Код:
max := a[1][1]; min := a[1][1];
for i := 1 to N do
  for j := 1 to M do
    begin
    if a[i][j] > max then
      begin
      max := a[i][j];
      continue;
      end;
    if a[i][j] < min then min := a[i][j];
    end;

for i := 1 to N do
  for j := 1 to M do
    if a[i][j] > max - min then inc(sum);
4) Не поняла, как символы могут заканчиваться восклицательным знаком.
Риндера вне форума Ответить с цитированием
Старый 17.11.2010, 13:48   #4
Grag
А может и не...
Участник клуба
 
Аватар для Grag
 
Регистрация: 27.03.2010
Сообщений: 1,269
По умолчанию

Риндера,
Код:
for i := 1 to m do
  for j := 1 to k do
    if b[i] = a[j] then inc(sum)
и где ж тут сумма членов последовательности b1...bm???
Да и вещественные (ака действительные) числа я бы не стал так сравнивать...( if b[i] = a[j])

По задаче №3, опять же, почему массив двумерный??? Где это оговорено?

Цитата:
4) Не поняла, как символы могут заканчиваться восклицательным знаком.
Восклицательным знаком заканчиваются не символы, а последовательность символов!!!
Перемешивай дело с бездельем и не сойдешь с ума...

Последний раз редактировалось Grag; 17.11.2010 в 13:55.
Grag вне форума Ответить с цитированием
Старый 17.11.2010, 16:03   #5
xSKYx
Новичок
Джуниор
 
Регистрация: 17.11.2010
Сообщений: 2
По умолчанию

GetMax дело в том что я вообще неразбираюсь в этой штуке. вот поэтому и прошу помощи.
Риндера сасибо за 2 задачки.
xSKYx вне форума Ответить с цитированием
Старый 18.11.2010, 11:05   #6
GetMax
Форумчанин
 
Регистрация: 21.10.2010
Сообщений: 588
По умолчанию

4 Задача
Код:
Type
  Massiv=array[1..20] of String;
Var
  Mas:Massiv;
  i,j,kol,Kol_b:Byte;
  Stroka,SubSt:String;
Begin
  ClrScr;
  Write('Введите строку: ');
  Readln(Stroka);
  WRiteln;
  j:=1;
  Kol:=1;
  For i:=1 to Length(Stroka) do
  Begin
    If Stroka[i] <> '!' then
    Begin
      If Stroka[i] <> ' ' then
      Begin
        Mas[j]:=Mas[j]+Stroka[i];
      End
      Else
      If Stroka[i] = ' ' then
      Begin
        Inc(j);
        Inc(Kol)
      End;
    End;
    If Stroka[i] = '!' then Break;
  End;
  Kol_b:=0;
  If Kol >= 3 then
  Begin
    SubSt:=Mas[3];
    For i:=1 to Length(SubSt) do
    Begin
      Inc(Kol_b)
    End;
    Writeln('В 3 слове количество букв = ',Kol_b)
  End
  Else
    Writeln('В строке нет 3-х слов ');
  Readln
End.
Пользователь не знает, чего он хочет, пока не увидит то, что он получил.
Для благодарностей WMR R145235935681
GetMax вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
турбо паскаль Elpis_176 Помощь студентам 1 09.06.2010 08:23
турбо паскаль glavad Помощь студентам 2 14.12.2009 21:36
Турбо паскаль Ильшатиккк Фриланс 14 16.09.2009 11:57
Турбо паскаль Gabi Помощь студентам 2 24.12.2008 22:18