Часовой пояс: UTC + 3 часа




Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 938 • Страница 2 из 47<  1  2  3  4  5 ... 47  >
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 

Member
Статус: Не в сети
Регистрация: 15.02.2005
Откуда: Saratoff
vor писал(а):

Спасибо, но ты всё таки так и не ответил эти два куска кода, которые ты написал они равназначны, т.е это тоже самое, что ли? (извини я полный ламер в Паскале) Спасибо тебе большое!!!



Партнер
 

Advanced member
Статус: Не в сети
Регистрация: 23.10.2003
Откуда: Иркутск/Майкоп
Crime
Нет, не одно и то же. Первый вариант вводит матрицу с клавиатуры, второй заполняет случайными числами от -5 до 5.

Pilad
Значит, не компилируется? Не знаю, на BC компиляция проходит. А в какой строке ошибка, не говорит?

_________________
Края каждого совершенно нового крышка процессора не на 100% гладкая. Это связано с тем, что следов мастерства не избежать. (c) Али.


 

Member
Статус: Не в сети
Регистрация: 02.03.2005
Фото: 0
Цитата:
Pilad
Значит, не компилируется? Не знаю, на BC компиляция проходит. А в какой строке ошибка, не говорит?


не говорит.
Пишет ERROR 7:Error in enteger constant.

Может пришлёте PAS файл с исправленным исходником?


 

Advanced member
Статус: Не в сети
Регистрация: 23.10.2003
Откуда: Иркутск/Майкоп
Pilad
Я только строку соединил, и всё. Наверное, какой-то нестандартный компилятор. :?: Скачайте нормальный.

_________________
Края каждого совершенно нового крышка процессора не на 100% гладкая. Это связано с тем, что следов мастерства не избежать. (c) Али.


 

Member
Статус: Не в сети
Регистрация: 02.03.2005
Фото: 0
vor писал(а):
Pilad
Я только строку соединил, и всё. Наверное, какой-то нестандартный компилятор. :?: Скачайте нормальный.


Скачал 4 штуки этого борланд с++ 3.1. с разных источников.
Все вызывают ошибку, какую я писал раньше.
Начинаю тихо сходить с ума.

А у вас он ехе файл программы создает?


 

Advanced member
Статус: Не в сети
Регистрация: 23.10.2003
Откуда: Иркутск/Майкоп
Pilad
Да, создаёт. Послал по почте.

_________________
Края каждого совершенно нового крышка процессора не на 100% гладкая. Это связано с тем, что следов мастерства не избежать. (c) Али.


 

Member
Статус: Не в сети
Регистрация: 15.02.2005
Откуда: Saratoff
vor писал(а):
!!! ВОПРОС !!!
Цитата:

Большое спасибо, тебе за програмку, но подскажи ещё кое что:
Что нужно добавить в код, чтобы числа в матрицу вводились ни по строчно а в столбик:


var
i,j:integer;
a:array[1..6,1..6] of integer;
begin
writeln;
for i:=1 to 6 do
for j:=1 to 6 do begin
write('a[',i,',',j,']=');
readln(a[i,j]);
end;
writeln('P=',a[6,1]*a[5,2]*a[4,3]*a[3,4]*a[2,5]*a[1,6]);
readln;
end.

Вот этот код, там что - то с GotoXY надо замутить - напиши пожалуйста как и куда его вставить!


 

Advanced member
Статус: Не в сети
Регистрация: 23.10.2003
Откуда: Иркутск/Майкоп
Crime
Что значит "в столбик"? Если нужно вводить по столбцам, то поменять местами индексы:
Код:
for i:=1 to 6 do
for j:=1 to 6 do begin
write('a[',j,',',i,']=');
readln(a[j,i]);
end;

_________________
Края каждого совершенно нового крышка процессора не на 100% гладкая. Это связано с тем, что следов мастерства не избежать. (c) Али.


 

Member
Статус: Не в сети
Регистрация: 15.02.2005
Откуда: Saratoff
vor писал(а):
Crime
Что значит "в столбик"? Если нужно вводить по столбцам, то поменять местами индексы:
Код:
for i:=1 to 6 do
for j:=1 to 6 do begin
write('a[',j,',',i,']=');
readln(a[j,i]);
end;


Логично! Это всё понятно... Но я имел ввиду то, что надо сделать так, чтобы матрица вводилась столбцами:
Пример:

2 4 4 4 2 4
1 2 4 2 7 4
2 3 4 4 2 2
2 9 2 1 3 8
1 7 7 2 3 4
9 8 4 5 6 7

т.е вот так, а не иначе!!!

Мне вроде подсказали GotoXY(j*5, i=3) тока ничё не получилось!!!
Может что то не так сделал???! Помоги пожалуйста!


 

Advanced member
Статус: Не в сети
Регистрация: 23.10.2003
Откуда: Иркутск/Майкоп
Тогда как-нибудь вот так:

uses crt;
var
i,j:integer;
a:array[1..6,1..6] of integer;
begin
writeln;
for i:=1 to 6 do
for j:=1 to 6 do begin
gotoxy(j*3,i);
read(a[i,j]);
end;
writeln('P=',a[6,1]*a[5,2]*a[4,3]*a[3,4]*a[2,5]*a[1,6]);
readln;
end.

_________________
Края каждого совершенно нового крышка процессора не на 100% гладкая. Это связано с тем, что следов мастерства не избежать. (c) Али.


 

Member
Статус: Не в сети
Регистрация: 15.02.2005
Откуда: Saratoff
vor писал(а):
Тогда как-нибудь вот так:

uses crt;
var
i,j:integer;
a:array[1..6,1..6] of integer;
begin
writeln;
for i:=1 to 6 do
for j:=1 to 6 do begin
gotoxy(j*3,i);
read(a[i,j]);
end;
writeln('P=',a[6,1]*a[5,2]*a[4,3]*a[3,4]*a[2,5]*a[1,6]);
readln;
end.


Большое спасибо, я разобрался сам...там всё было ок! Ошибка была в том, что я не подключал библиотеку uses crt кстати что она собой представляет???!


 

Member
Статус: Не в сети
Регистрация: 03.01.2004
Откуда: Питер
Crime
Цитата:
uses crt кстати что она собой представляет???!

Набор функций, типа clrscr, readkey и т.д.

_________________
Здесь так мало тех, с кем легко говорить,
Еще меньше тех, с кем не страшно молчать (c)


 

Пацаны помогите пожалуйста расставить более подробные комментарии к моей уже готовой программе на VB…


 

Member
Статус: Не в сети
Регистрация: 13.03.2005
Откуда: Москва
Может здесь помогут.
Необходимо написать генератор случайный чисел работающий по нормальному распределению. Алоритм написан необходимо построить график и вывести таблицу вероятность переода из каждой точки в любую. Проблема заключается в том что вероятность в центре фигуры по таблице идёт реальная уменьшаясь к краям. Но на последних значениях вместо того что-бы обратиться практически в 0 наблюдается необьяснимый всплеск. Причём чем больше количество опытов тем результат на концах более бредовый. В чём может быть проблема.
Код:
 
unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, TeEngine, Series, ExtCtrls, TeeProcs, Chart, ComCtrls,
  Grids,math;
 
type
  TForm1 = class(TForm)
    Chart1: TChart;
    Button1: TButton;
    LECount: TLabeledEdit;
    LEDis: TLabeledEdit;
    PB: TProgressBar;
    Label1: TLabel;
    SG: TStringGrid;
    LEMat: TLabeledEdit;
    Series1: TAreaSeries;
    procedure Button1Click(Sender: TObject);
  private
    procedure GrdClear;
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
 
implementation
 
{$R *.dfm}
 
procedure TForm1.GrdClear;   
var
 i,j:byte;
begin
 SG.Cols[0].Clear;
 for i:=1 to 30 do
 begin
  SG.Cols[i].Clear;
  SG.Cells[0,i]:=inttostr(i);
  SG.Cells[i,0]:=inttostr(i);
 end;
end;
 
 
procedure TForm1.Button1Click(Sender: TObject);
var
 i,j,k,l,colcount,mat:integer;
 count: array [-100 .. 100]of longint;
 cnt:array[-34..34,-34..34] of longint;
 cnt2:array[-34..34] of longint;
 dis,znach,znachp:real;
 numcount,min:longint;
 U : Double;
 V : Double;
 S : Double;
 Sum : Double;
begin
 Button1.Caption:='';
 Button1.Enabled:=false;
 Button1.Repaint;
 PB.Position:=0;
 PB.Max:=0;
 PB.Min:=0;
 colcount:=strtoint(LECount.Text);
 dis:=strtofloat(LEDis.Text);
 mat:=strtoint(LEMat.Text);
 Chart1.Series[0].Clear;
 PB.Max:=colcount;
 for i:=-34 to 34 do cnt2[i]:=1;
 for i:=-34 to 34 do for j:= -34 to 34 do cnt[i,j]:=0;
 for i:=-100 to 100 do count[i]:=0;
 znachp:=1;
 for i:=0 to colcount-1 do
 begin
 
 sum:=2;
 repeat
  u := (2*floor( Random(2))-1)*Random;
  v := (2*floor(Random(2))-1)*Random;
  sum := u*u+v*v;
 until (sum<1) and (sum>0);
 sum := sqrt(-2*ln(sum)/sum);
 znach := dis*u*sum+mat;
 
  if (znach>-99) and (znach <99) then
  begin
   count[round(znach)]:=count[round(znach)]+1;
 
   k:=round(znachp);
   if k<-99 then k:=-99;
   if k>99 then k:=99;
   k:=k div 3;
   l:=round(znach);
   if l<-99 then l:=-99;
   if l>99 then l:=99;
   l:=l div 3;
   cnt[k,l]:=cnt[k,l]+1;
   cnt2[l]:=cnt2[l]+1;
   znachp:=znach;
  end;
  if (i /(colcount div 100))=(i div (colcount div 100)) then PB.Position:=i;
 end;
 

 for i:=-99 to 99 do
 begin
  if(count[i]>0) then Chart1.Series[0].AddXY(i,count[i]);
 end;
 
 numcount:=0;
 min:=-500;
 for i:=-33 to 33 do
  if cnt2[i]>1 then
  begin
   numcount:=numcount+1;
   if min=-500 then min:=i;
  end;
 

 SG.ColCount:=numcount+2;
 SG.RowCount:=numcount+2;
 

 for i:=min to min+numcount do
 begin
  SG.Cells[0,i-min+1]:=inttostr(i);
  SG.Cells[i-min+1,0]:=inttostr(i);
 end;
 

 for i:=min to min+numcount do
  for j:=min to min+numcount do
   if cnt2[j]<>1 then SG.Cells[i-min+1,j-min+1]:=floattostr(cnt[j,i]/(cnt2[j]-1)*100); 
 PB.Position:=colcount;
 Button1.Caption:='';
 Button1.Enabled:=true;
end;
 
end.



http://up.li.ru/files/2005/04/19/53787. ... +Image.JPG


 

Member
Статус: Не в сети
Регистрация: 13.03.2005
Откуда: Москва
Вопрос жизни и смерти. В понедельник уже 2 недели с последнего дня сдачи экзамена который примут только после работающей этой курсовой. Каковая не работает зараза.


 

Member
Статус: Не в сети
Регистрация: 13.03.2005
Откуда: Москва
Прога лежит здесь.
http://webfile.ru/272395


 

Member
Статус: Не в сети
Регистрация: 15.02.2005
Откуда: Saratoff
Ребята помогите пожалуйста опять, задание таково:

Дана строка. В этой строке необходимо поменять первое слово с последним и вывести на экран, что получилось! (Прога на Турбо Паскаль 7.0)


Заранее примного благодарен!

p.s: Пожалуйста полностью весь код, потому что толком я ничего не понимаю в нём из-за того, что у нас самостоятельное изучение, причём ещё и времени не хватает из-за напряга с другими дисциплинами!

Оо-оОООчеь благодарен! 10х респект VOR`у!!! ( Я сдал всё таки то задание) Препод правда цеплялась за то, что надо было с циклом делать её! (ну да бог с ним - пройденный этап)


 

Member
Статус: Не в сети
Регистрация: 02.08.2004
Откуда: Moscow region
Crime
Ну например во так (написана немного коряво, но габотает...)
Код:
program Project2;
var
a,s1,s2:string;
i:integer;
begin
s1:='';
s2:='';
i:=1;
writeln ('Enter string');
readln (a);
//Начиная c первой буквы в строке а просматриваются все символы, пока не встретится пробел.
//Если символ не пробел, то он прибавляется к строке s1. Если пробел - то со строкой s1 больше //ничего не происходит - она и есть первое слово в строке...
while a[i]<>' ' do
begin
s1:=s1+a[i];
i:=i+1;
end;
//Далее просматриваем все символы в строке а с конца и до пробела. После выхода из цикла
//значение переменной i - номер последнего пробела в строке - т.е. № символа + 1, с которого //начинается последнее слово...
i:=length(a);
while a[i]<>' ' do
begin
i:=i-1;
end;

//Потом символы строки а начиная со значения i+1 и до конца строки записываются в строку s2/
i:=i+1;
while (a[i]<>' ')and (i<=length(a)) do
begin
s2:=s2+a[i];
i:=i+1;
end;

//Из строки а удаляем: от конца столько символов, какова длина посл. слова (строка s2) начиная с символа "длина строки а - длина строки s2", а от начала столько символов, какова длина первого слова (строки s2) начиная с символа №1
delete(a,length(a)-length(s2),length(s2)+1);
delete(a,1,length(s1)+1);
//Вывод на печать сначала последнего слова (s2), потом остатка строки а - т.е оставшиеся слова, //потом первое слово (s1)
writeln (s2,' ',a,' ',s1);
end.


_________________
Когда у общества нет цветовой дифференциации штанов, у него нет цели.


Последний раз редактировалось SoluS 26.04.2005 8:20, всего редактировалось 2 раз(а).

 

Member
Статус: Не в сети
Регистрация: 15.02.2005
Откуда: Saratoff
Ок! Пасибки!!! А по рямее можно чуток, код вообще не понятен мне!!!

VOR может ты поможешь...


 

Member
Статус: Не в сети
Регистрация: 02.08.2004
Откуда: Moscow region
Crime
Добавил коментарии - мож понятней стало...

_________________
Когда у общества нет цветовой дифференциации штанов, у него нет цели.


Показать сообщения за:  Поле сортировки  
Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 938 • Страница 2 из 47<  1  2  3  4  5 ... 47  >
-

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


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

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan