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

> Внимание!

1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

 
 Ответить  Открыть новую тему 
> Сортировка, поиск, Язык Си
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 11
Пол: Мужской
Реальное имя: Юрий

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


Помогите пожалуйста переписать из Паскаля в Си, пунктуацию си совсем не знаю, если не сложно:
Main.pas

program pagr;
uses g_modulis;
var l, kiek, c, i, p,i1, a_search : integer;
rez, stat : string;
mas : masyvas;
f, outf, st : text;
start,start1,Result: longint;

begin

{$I-}
Assign(f, 'BLA.txt');
Rewrite(f);
for i := 1 to 2000 do
begin
randomize;
mas[i] := random(1000);
write(f, mas[i], ' ');
end;
reset(f);

kiek :=0;
repeat
Writeln(' Enter the result file name: ');
Readln(rez);
Assign(outf, rez);
Rewrite(outf);
Inc(kiek);
if kiek=3 then halt;
until IOResult=0;

kiek :=0;
repeat
Writeln('Enter the statistics file name: ');
Readln(stat);
Assign(st, stat);
Rewrite(st);
Inc(kiek);
if kiek=3 then halt;
until IOResult=0;
{$I+}

p := 1;

while not seekeof(f) do
begin
if seekeoln(f) then
readln(f);
read(f, l);
mas[p] := l;
inc(p);
end;

writeln('First massive');
for i1 :=1 to 2000 do
write(mas[i1],' ');

writeln;
start:=gettime1;
burbulas(mas , n);
writeln('Time of sorting:',gettime1-start, ' mSec');
write(st, gettime1-start );
for c := 1 to 2000 do
begin
write(outf, mas[c]);
write(outf,' ');
write(mas[c],' ');
end;
writeln;
Writeln(' Enter the value of element to find:');
Readln(a_search);

start1:=gettime1;
Result:=Bin_Search (mas, 50, a_search);
if (result > 0) then begin
WriteLn('Time of finding ', GetTime1 - start1);

writeln ('number= ',result) ;
end
else writeln('Not found!');
readln;

close(f);
close(st);
close(outf);
readln;

end.







Module.pas

unit g_modulis;

interface
uses dos;
const n =2000;

type masyvas = array[1..n] of integer;


procedure burbulas(var mas : masyvas; n : integer);
function Gettime1:longint;
Function Bin_Search (mas:masyvas; size:integer; x: integer) : integer;


implementation

procedure burbulas(var mas : masyvas; n : integer);
var i, j, b : integer;
c : boolean;
begin
j:= 1;
repeat
c:=true;
for i:=1 to n-j do
if mas[i] > mas[i+1] then
begin
b:= mas[i];
mas[i]:= mas[i+1];
mas[i+1]:=b;
c:=false;
end;
j:=j+1;
until (j=n) or c
end;

function Gettime1:LongInt;
var h,m,s,ms:word;
begin
gettime(h,m,s,ms);
gettime1:=ms+100*(s+60*(m+60*h));
end;


Function Bin_Search (mas:masyvas; size:integer; x: integer) : integer;

Var left, right, center: integer;
begin
left := 1; right := size;
repeat center := (right + left)
div 2;
if mas[ center ] >= X
then right := center
else left := center;
until (right - left = 1) or (mas[ center ] = X);
bin_search:=center;
end;
end.




Прикрепленные файлы
Прикрепленный файл  pagr.pas ( 1.73 килобайт ) Кол-во скачиваний: 149
Прикрепленный файл  g_modulis.pas ( 1.06 килобайт ) Кол-во скачиваний: 164
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


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

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

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


Лучше задание напиши, проще заново будет сделать сразу на c++.


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


Новичок
*

Группа: Пользователи
Сообщений: 11
Пол: Мужской
Реальное имя: Юрий

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


Цитата(klem4 @ 27.05.2007 9:28) *

Лучше задание напиши, проще заново будет сделать сразу на c++.

Хорошо, только язык должен быть Си а не Си++:

Написать программу на языке Си реализующую двоичный поиск. Функции процедуры должны находиться в отдельном пакете, Начальные данные и конечные находиться в файлах, имена которых вводятся с клавиатуры, так же программа должна собирать статистическую информацию, сколько времени программа затратила на поиск или сортировку
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


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

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

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


еще актуально ? unsure.gif


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

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

 





- Текстовая версия 23.11.2020 23:30
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name