Вернуться   GraBBerZ.CoM - ICQ | Proxy | Бруты | Дедики | Эксплоиты > Программирование/Кодинг > Общие вопросы

Ответ
 
Опции темы Опции просмотра

Старый 01.11.2009, 22:48   #31
bit
 
Аватар для luninet
 
luninet вне форума
Регистрация: 14.09.2006
Сообщений: 40
Респекты: 128
Цитата:
Сообщение от Zdez Bil Ya Посмотреть сообщение
формула тоже напрашивается, если очень надо, могу додумать
(n+1)*m/2

n - "длинная" (слева направо)
m - "высота" (сверху вниз)

Zdez Bil Ya,
Твоя формула универсальна =\ В смысле для всех трех случаев
наверно потому, что первое задание, таким же методом уголка как в случае с четными, давало тоже максимальный результат

Т.е. если рисовать на машинном уровне, то после ввода Н и М делаем матрицу заданных размеров, и заполняет нулями, далее делает поочередный обход по верхнему и правому незаполненному краю, сначала единицами, потом двойцами, до встречи с соответственно противоположым (1-2, 2-1) или концом. единицы - диагонали, 2 - пустые квадраты
  Ответить с цитированием
Респектов за этот пост: 2

Старый 01.11.2009, 23:10   #32
 
Аватар для Zdez Bil Ya
 
Zdez Bil Ya вне форума
Регистрация: 08.08.2008
Сообщений: 1,499
Респекты: 3,395
Цитата:
Сообщение от luninet Посмотреть сообщение
Zdez Bil Ya,
Твоя формула универсальна =\ В смысле для всех трех случаев
да, действительно)) только надо подставлять в формулы, соблюдая условия
значит вот так получается:

Код:
if (N=1) then max:=M
else
 if (M=1) then max:=N
 else
  if (N mod 2<>0) or (N>M) then max:= (N+1)*M/2
  else
   max:= (M+1)*N/2;
ну а рисунок тоже из этих же условий можно составить по методике из моего поста)
  Ответить с цитированием
Юзеру Zdez Bil Ya выразили Респект за этот пост:

Старый 01.11.2009, 23:26   #33
kilobyte
 
Аватар для V@mpir
 
V@mpir вне форума
Регистрация: 04.07.2008
Адрес: Россия
Сообщений: 139
Респекты: 121
Zdez Bil Ya,
luninet,
Я сделал примерно так же...
Цитата:
r:=0;
if (m<=n) and (m div 2=0) then
r:=n+1;
if (m<=n) and (m div 2<>0) then
r:=n*2;
if (m>=n) and (n div 2<>0) then
r:=n*2;
if (m>=n) and (n div 2=0) then
r:=n*2+1;
if n=1 then
r:=m;
if m=1 then
r:=n;
Но не в этом соль.
Сама трудность в заполнение такой таблицы...
  Ответить с цитированием

Старый 01.11.2009, 23:33   #34
kilobyte
 
Аватар для idainet
 
idainet вне форума
Регистрация: 29.09.2006
Сообщений: 128
Респекты: 894
Zdez Bil Ya,
Я бы даже сократил

Код:
if n=1 or m=1 then max:=n*m
elsif (n mod 2 <> 0 ) then max:= (n+1)*m/2
else max:=(m+1)*n/2
или даже так

Код:
if (n mod 2 <> 0 ) then max:= (n+1)*m/2
else max:=(m+1)*n/2
  Ответить с цитированием

Старый 02.11.2009, 00:07   #35
 
Аватар для Zdez Bil Ya
 
Zdez Bil Ya вне форума
Регистрация: 08.08.2008
Сообщений: 1,499
Респекты: 3,395
Цитата:
Сообщение от IdaiNet Посмотреть сообщение
Zdez Bil Ya,
Я бы даже сократил

Код:
if n=1 or m=1 then max:=n*m
это да)
Цитата:
Сообщение от IdaiNet Посмотреть сообщение
Код:
elsif (n mod 2 <> 0 ) then max:= (n+1)*m/2
else max:=(m+1)*n/2
а тут просто убрал условие if (N>M) . так не получится

Цитата:
Сообщение от V@mpir Посмотреть сообщение
Сама трудность в заполнение такой таблицы...
1)берешь первую строку: заполняешь ее от начала до конца
2)берешь столбец, на котором закончилось заполнения строки, заполняешь его вниз до конца
3) берешь следующую нечетную строку, заполняешь ее от начала до заполненного столбца, так, чтобы между ними оставалась пустая клетка
повторяем 2 и 3 сколько надо

вот как-то так:
это при N>M (иначе просто симметрично)
Код:
i:=1;
k:=N;
while (k>=1) or (M>=i+1) do
 begin
  for j:=1 to k do A[i,j]:='/';
  for j:=i+1 to M do A[j,k]:='/';
  i:=i+2;
  k:=k-2;
 end;
остальные элементы матрицы заполнены точками)
  Ответить с цитированием
Респектов за этот пост: 2

Нужна помощь
Старый 25.12.2009, 19:30   #36
bit
 
Аватар для SpamerForYou
 
SpamerForYou вне форума
Регистрация: 25.12.2009
Сообщений: 11
Респекты: 6
Сообщение Нужна помощь

Нужно написать 3 программы на Delphi, ребята помогите кто может, буду очень благодарен)

1.Напечатать все слова, удалив из них все предыдущие вхождения последней буквы каждого слова


2.Задан числовой массив, состоящий из n элементов (n<=100). Используя сортировку массива, определить количество различных положительных значений элементов массива.

3.Номер первого нулевого элемента, стоящего после отрицательного элемента, или 0, если такого элемента нет.
  Ответить с цитированием

Старый 27.12.2009, 20:40   #37
kilobyte
 
Аватар для exo
 
exo вне форума
Регистрация: 18.12.2007
Сообщений: 175
Респекты: 40
SpamerForYou,
N 2
Код:
program Project2;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var
  I, J, N, K, Kol: Integer;
  A: array [1..100] of Integer;
begin
  Write('Vvod razmera massiv ');
  ReadLn(N);
  WriteLn('vvod massiv');
  for I:=1 to N do
    Read(A[i]);
  for I:=1 to N do
  begin
    K:=0;
    if A[i]>0 then
      for J := 1 to N do
      begin
        if A[i]<>A[J] then
        begin
          K:=K+1;
          if K=N then
            Kol:= Kol+1;
        end;
      end;
  end;
  Write(K, ' ');
  ReadLn;
  ReadLn;
end.
N3
Код:
program Project3;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var
  I, J, N, K, Kol: Integer;
  A: array [1..100] of Integer;
begin
  Write('Vvod razmera massiv ');
  ReadLn(N);
  WriteLn('vvod massiv');
  for I:=1 to N do
    Read(A[i]);
  for I:=2 to N do
  begin
    if ((A[I-1]<0) or (A[I-1]=0)) and (A[i]=0) then
      Break;
  end;
  Write(I, ' ', A[i]);
  ReadLn;
  ReadLn;
end.
  Ответить с цитированием

Старый 27.12.2009, 22:47   #38
Вечный студент
 
Аватар для Tor Bel
 
Tor Bel вне форума
Регистрация: 05.07.2008
Адрес: Большая Деревня
Сообщений: 3,001
Респекты: 3,407
exo, с ошибками написал. Поищи сам.
__________________
Ударим глюком по багу. (с)2000 by мой.
В избе у Сергеича
Почётный фанат Ушатика - масюты
  Ответить с цитированием

Старый 27.12.2009, 23:02   #39
bit
 
Аватар для SpamerForYou
 
SpamerForYou вне форума
Регистрация: 25.12.2009
Сообщений: 11
Респекты: 6
Exo большое спасибо)
  Ответить с цитированием

Старый 28.12.2009, 08:57   #40
kilobyte
 
Аватар для exo
 
exo вне форума
Регистрация: 18.12.2007
Сообщений: 175
Респекты: 40
Tor Bel, в первой надо выводить Kol
  Ответить с цитированием

Старый 28.12.2009, 20:12   #41
bit
 
Аватар для Keltos
 
Keltos вне форума
Регистрация: 22.12.2009
Сообщений: 15
Респекты: 0
Надо написать две легеньких задачки на Паскале.
На С знаю как делать, а с Паскалем не дружу )
Help Please !!!)))

Заранее спасибо

Задачка 1:

Дано три числа. Найти и вывести на экран наименьшее число.

Задачка 2:

Дано два числа. Выводить на экран первое число если оно больше второго, в противоположном случае - выводить на экран второе
  Ответить с цитированием

Старый 28.12.2009, 20:26   #42
 
Аватар для Zdez Bil Ya
 
Zdez Bil Ya вне форума
Регистрация: 08.08.2008
Сообщений: 1,499
Респекты: 3,395
Цитата:
Сообщение от Keltos Посмотреть сообщение
Дано три числа. Найти и вывести на экран наименьшее число.
Код:
Program One;
var x,y,z: integer;
begin
 write('Введите числа:');
 read(x,y,z);
 if (x<=y) then
  if (x<=z) then write(x)
  else write(z)
 else
  if (y<=z) then write(y)
  else write(z);
end.

Цитата:
Сообщение от Keltos Посмотреть сообщение
Дано два числа. Выводить на экран первое число если оно больше второго, в противоположном случае - выводить на экран второе
Код:
Program Two;
var x,y: integer;
begin
 write('Введите числа:');
 read(x,y);
 if (x>y) then write(x)
  else write(y);
end.
  Ответить с цитированием

Старый 12.01.2010, 15:46   #43
bit
 
Аватар для SpamerForYou
 
SpamerForYou вне форума
Регистрация: 25.12.2009
Сообщений: 11
Респекты: 6
ребятки, напишите кому не трудно на Delphi

1.Текст является правильной записью целого числа.

2.Y=x - x^3/3! + x^5/5! - ... + (-1)^nx^(2n+1)/(2n+1)!

3.S=x - (x^3)/3 + (x^5)/5 - ... + (-1)^n(x^(2n+1))/(2n+1) + ... ( ¦x¦<1 ).

Заранее спасибо)))
  Ответить с цитированием

Старый 20.01.2010, 22:17   #44
kilobyte
 
Аватар для V@mpir
 
V@mpir вне форума
Регистрация: 04.07.2008
Адрес: Россия
Сообщений: 139
Респекты: 121
Цитата:
var A:array[1..5,1..6] of integer;
i,j:integer;
begin;
randomize;
for i:=1 to 5 do begin
for j:=1 to 6 do begin
a[i,j]:=random (10);
write(a[i,j],' ');
end;
writeln;

end;
readln;
end.
Нужно составить новый массив, где первые три столбца будут заменены на квадрат прежних значений. И вывести для сравнения оба...
  Ответить с цитированием

Старый 20.01.2010, 22:34   #45
kilobyte
 
Аватар для idainet
 
idainet вне форума
Регистрация: 29.09.2006
Сообщений: 128
Респекты: 894
V@mpir,

Код:
type
mas = array[1..5,1..6] of integer;

var
a,cow:mas; 
i,j:integer;

begin;
randomize;
  for i:=1 to 5 do begin
    for j:=1 to 6 do begin
       a[i,j]:=random (10);
       if j <= 3 then cow[i,j]:=a[i,j]*a[i,j]
       else cow[i,j]:=a[i,j];
       write(a[i,j],'-',cow[i,j],'#');
    end;
    writeln;
  end; 

readln;
end.
Вроде так
  Ответить с цитированием
Юзеру idainet выразили Респект за этот пост:
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Время: 10:10



Powered by vBulletin® Version 3.7.6
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd. Перевод: zCarot