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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.06.2012, 16:20   #1
Риналь
 
Регистрация: 05.04.2012
Сообщений: 5
По умолчанию Задачи в free Pacal and ABC Pascal

ну получается решить задачи в паскале
Изображения
Тип файла: jpg Фото0842.jpg (97.6 Кб, 159 просмотров)
Риналь вне форума Ответить с цитированием
Старый 22.06.2012, 16:33   #2
paravoz1k
Пользователь
 
Аватар для paravoz1k
 
Регистрация: 26.03.2010
Сообщений: 78
По умолчанию

совет - с таким подходом вам никто не поможет, нужны как минимум свои наработки.
Начинающий кодер Delphi + PHP
paravoz1k вне форума Ответить с цитированием
Старый 22.06.2012, 18:30   #3
Риналь
 
Регистрация: 05.04.2012
Сообщений: 5
По умолчанию

Цитата:
Сообщение от paravoz1k Посмотреть сообщение
совет - с таким подходом вам никто не поможет, нужны как минимум свои наработки.
\

Решение к задаче №11
Код:
var
n,m,col:longint;

begin
write('N= '); read(n);
write('Cifra: '); read(m);
while(n<>0) do begin
if n mod 10>m  then inc(col);
n:=n div 10;
end;
writeln('Rezultat: ', col);
end.

слушай правильно ли if n mod 10>m then inc(col);?????

Решение задачи № 17
ПРОВЕРЬТЕ пожалуйста
Код:
program zad17;
Uses CRT;
Var a:array[1..100] of integer;
    i,n,j:byte;
    buf:integer;
begin
repeat
 readln(n);
until n in [1..100];
randomize;
for i:=1 to n do
begin
 a[i]:=random(20)-3;
 if (a[i]>0) and (i mod 2<>0) then textcolor(5)
 else textcolor(0);
 write(a[i]:3);
end;
for i:=1 to (n div 2+n mod 2)-1 do
for j:=i+1 to (n div 2+n mod 2) do
if (a[i*2-1]>0) and (a[j*2-1]>0) and (a[i*2-1]>a[j*2-1]) then
begin
 buf:=a[i*2-1];
 a[i*2-1]:=a[j*2-1];
 a[j*2-1]:=buf;
end;
writeln;
for i:=1 to n do
begin
 if (a[i]>0) and (i mod 2<>0) then textcolor(5)
 else textcolor(0);
 write(a[i]:3);
end;
readln;
end.

Последний раз редактировалось Stilet; 22.06.2012 в 20:32.
Риналь вне форума Ответить с цитированием
Старый 22.06.2012, 19:40   #4
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,429
По умолчанию

Во-первых, код положено оформлять с помощью кнопочки #.
Во-вторых, непонятно, зачем в 11 задаче дана длина числа.
11 задача:
Код:
var
  n: longint;
  count: integer;

begin
  write('Number: ');
  readln(n);
  count:=0;
  while(n <> 0) do 
  begin
    if odd(n mod 10) then inc(count);
    n := n div 10;
  end;
  writeln('Count of odd digits: ', count);
  readln;
end.
Цитата:
правильно ли if n mod 10>m then inc(col);?????
По-моему, в задаче спрашивают другое, а именно, количество нечетных цифр, а не количество цифр, больших заданного.
17 задача - исправил пару незначительных моментов (ошибок не было, кроме того, что n - в задаче четко определен):
Код:
program zad17;

uses
  CRT;
  
  const
  n=20;

var
  a: array[1..n] of integer;
  i, j: byte;
  buf: integer;

begin
  randomize;
  for i := 1 to n do
  begin
    a[i] := random(100) - 50;
    if odd(i) and (a[i]>0) then textcolor(14) else textcolor(7);
    write(a[i],' ');
  end;
  for i := 1 to (n div 2 + n mod 2) - 1 do
    for j := i + 1 to (n div 2 + n mod 2) do
      if (a[i * 2 - 1] > 0) and (a[j * 2 - 1] > 0) and (a[i * 2 - 1] > a[j * 2 - 1]) then
      begin
        buf := a[i * 2 - 1];
        a[i * 2 - 1] := a[j * 2 - 1];
        a[j * 2 - 1] := buf;
      end;
  writeln;
  for i := 1 to n do
  begin
    if odd(i) and (a[i]>0) then textcolor(14) else textcolor(7);
    write(a[i],' ');
  end;
  readln;
end.
21 задача:
Код:
uses
  crt;

const
  n = 5;
  m = 7;

var
  a: array[1..n, 1..m] of integer;
  i, j: byte;
  s, k: longint;

begin
  k := 0;
  randomize;
  for i := 1 to n do
  begin
    for j := 1 to m do
    begin
      a[i, j] := random(100) - 50;
      write(a[i, j], ' ');
    end;
    writeln;
  end;
  for j := 1 to m do
  begin
    s := 0;
    for i := 1 to n do
      s := s + a[i, j];
    for i := 1 to n do
      if 2 * a[i, j] > s then 
      begin
        writeln('element (', i, ',', j, '): ', a[i, j]);
        inc(k);
      end;
  end;
  writeln('k: ', k);
  readln;
end.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )

Последний раз редактировалось BDA; 22.06.2012 в 20:30.
BDA вне форума Ответить с цитированием
Старый 22.06.2012, 21:00   #5
Риналь
 
Регистрация: 05.04.2012
Сообщений: 5
По умолчанию

Цитата:
Сообщение от BDA Посмотреть сообщение
Во-первых, код положено оформлять с помощью кнопочки #.
Во-вторых, непонятно, зачем в 11 задаче дана длина числа.
11 задача:
Код:
var
  n: longint;
  count: integer;

begin
  write('Number: ');
  readln(n);
  count:=0;
  while(n <> 0) do 
  begin
    if odd(n mod 10) then inc(count);
    n := n div 10;
  end;
  writeln('Count of odd digits: ', count);
  readln;
end.
По-моему, в задаче спрашивают другое, а именно, количество нечетных цифр, а не количество цифр, больших заданного.
17 задача - исправил пару незначительных моментов (ошибок не было, кроме того, что n - в задаче четко определен):
Код:
program zad17;

uses
  CRT;
  
  const
  n=20;

var
  a: array[1..n] of integer;
  i, j: byte;
  buf: integer;

begin
  randomize;
  for i := 1 to n do
  begin
    a[i] := random(100) - 50;
    if odd(i) and (a[i]>0) then textcolor(14) else textcolor(7);
    write(a[i],' ');
  end;
  for i := 1 to (n div 2 + n mod 2) - 1 do
    for j := i + 1 to (n div 2 + n mod 2) do
      if (a[i * 2 - 1] > 0) and (a[j * 2 - 1] > 0) and (a[i * 2 - 1] > a[j * 2 - 1]) then
      begin
        buf := a[i * 2 - 1];
        a[i * 2 - 1] := a[j * 2 - 1];
        a[j * 2 - 1] := buf;
      end;
  writeln;
  for i := 1 to n do
  begin
    if odd(i) and (a[i]>0) then textcolor(14) else textcolor(7);
    write(a[i],' ');
  end;
  readln;
end.
21 задача:
Код:
uses
  crt;

const
  n = 5;
  m = 7;

var
  a: array[1..n, 1..m] of integer;
  i, j: byte;
  s, k: longint;

begin
  k := 0;
  randomize;
  for i := 1 to n do
  begin
    for j := 1 to m do
    begin
      a[i, j] := random(100) - 50;
      write(a[i, j], ' ');
    end;
    writeln;
  end;
  for j := 1 to m do
  begin
    s := 0;
    for i := 1 to n do
      s := s + a[i, j];
    for i := 1 to n do
      if 2 * a[i, j] > s then 
      begin
        writeln('element (', i, ',', j, '): ', a[i, j]);
        inc(k);
      end;
  end;
  writeln('k: ', k);
  readln;
end.
спасибо большое))понял ошибки
Риналь вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Pacal ABC -графики функций Денис Fordham Помощь студентам 0 29.04.2012 01:19
3 задачи в free pascal. Фрукт Фриланс 4 25.12.2011 23:21
Free Pascal задачи на строки andrey2 Помощь студентам 9 25.12.2011 16:31
ABC pacal. Для данного х вычислить значение функции. lyulka Помощь студентам 2 17.11.2011 17:06
а free pascal не читает задачи которые написаны на turbo pascal? demonara Паскаль, Turbo Pascal, PascalABC.NET 3 25.05.2009 16:28