Создание блок-схем

Обсуждение любого программного обеспечения. No warez or cracks here...

Сообщение dvss » Вс июл 18, 2004 7:09 am

Существует ли прога чтобы она сама по исходнику составляла блок-схему?
<a href='http://dvss.e-baka.net/' target='_blank'>dvss_homepage</a>
dvss
Капитан
 
Сообщений: 152
Зарегистрирован: Ср июн 04, 2003 2:11 pm
Пункты репутации: 0

Сообщение Sh0Ck_filE » Вс июл 18, 2004 1:22 pm

А под какой язык?
Если С++, то посмотри в сторону Visio или Rose, там вроде мона... Подробнее на rsdn.ru
<!--coloro:red--><span style="color:red"><!--/coloro-->"Для того чтобы быть человеком, надо им какое-то время не быть."<!--colorc--></span><!--/colorc--> ©<a href="http://zhurnal.lib.ru/b/brigadir_j_a/" target="_blank">Ю. А. Бригадир.</a>
<a href="http://counter.li.org/cgi-bin/runscript/display-person.cgi?user=437143" target="_blank">Registered Linux user #437143</a>.
Sh0Ck_filE
Генерал-лейтенант
 
Сообщений: 3474
Зарегистрирован: Пн апр 21, 2003 6:20 pm
Откуда: СССР
Пункты репутации: 0

Сообщение dvss » Вс июл 18, 2004 2:16 pm

<!--QuoteBegin--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>Цитата </td></tr><tr><td id='QUOTE'><!--QuoteEBegin-->А под какой язык?<!--QuoteEnd--></td></tr></table><div class='postcolor'><!--QuoteEEnd-->
Под паскаль ;)
<a href='http://dvss.e-baka.net/' target='_blank'>dvss_homepage</a>
dvss
Капитан
 
Сообщений: 152
Зарегистрирован: Ср июн 04, 2003 2:11 pm
Пункты репутации: 0

Сообщение Shelix » Вс июл 18, 2004 5:05 pm

2dvss
Не совсем понятно, чего ты хочешь. Вообще, как я понимаю, блок-схемы это более высокий уровень абстракции, это все равно, что из бинарного кода восстановить код на языке высокого уровня. Или я тебя неправильно понял?
<span style='color:blue'>Если тебе не нравится, как я излагаю, купи себе у бога копирайт на русский язык. (Борис Гребенщиков)</span>
<span style='color:yellow'>Все это лишь шизофреническая фантазия моего воспаленного мозга...</span>
Shelix
Подполковник
 
Сообщений: 574
Зарегистрирован: Сб апр 05, 2003 9:06 am
Откуда: Казань
Пункты репутации: 0

Сообщение dvss » Вс июл 18, 2004 7:21 pm

2Shelix
Мне надо чтобы прога из исходника сделала блок-схему...вроде всё понятно.
<!--QuoteBegin--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>Цитата </td></tr><tr><td id='QUOTE'><!--QuoteEBegin-->Вообще, как я понимаю, блок-схемы это более высокий уровень абстракции<!--QuoteEnd--></td></tr></table><div class='postcolor'><!--QuoteEEnd-->
Вроде так и есть.

Вообще я нашел такую прогу...но она работает тока с VB =(
<a href='http://dvss.e-baka.net/' target='_blank'>dvss_homepage</a>
dvss
Капитан
 
Сообщений: 152
Зарегистрирован: Ср июн 04, 2003 2:11 pm
Пункты репутации: 0

Сообщение С_д » Вс июл 18, 2004 9:40 pm

Попробуй вот эту прогу:

<a href='http://dmitriyo.narod.ru/Proga/Avtoshema.zip' target='_blank'> Avtoshema </a>

Хотя тупит она, надо признать, сильно. Что-то сложное построить с её помощью лучше даже и не пытаться - ошибок будет море.
Последний раз редактировалось С_д Вс июл 18, 2004 9:40 pm, всего редактировалось 1 раз.
Fly like proud eagle little polly :-)
С_д
Сержант
 
Сообщений: 28
Зарегистрирован: Пт май 21, 2004 5:31 am
Пункты репутации: 0

Сообщение dvss » Пн июл 19, 2004 5:26 am

2С_д
Мдя...Тупит нехило... Ни одну из 10 прог нормально не сделала =( Все время какие-то ошибки...
<a href='http://dvss.e-baka.net/' target='_blank'>dvss_homepage</a>
dvss
Капитан
 
Сообщений: 152
Зарегистрирован: Ср июн 04, 2003 2:11 pm
Пункты репутации: 0

Сообщение Spike » Пн июл 19, 2004 6:17 am

2dvss
Ну у тебя и требования Изображение
Чтобы программа автоматом делала схемы на более-менее сложный проект, то имхо ее разработкой должен заняца нехилый разработчик. Я имею ввиду полностью раскрытую структуру, а не "налево да, направо нет". Тем более мне непонятно, как человеческие описания давать таким схемам...
А вообще, судя по твоему запросу, тебе сабж нужен для заданий по учебе.. Так там проги простые, можешь и сам.
Последний раз редактировалось Spike Пн июл 19, 2004 6:18 am, всего редактировалось 1 раз.
<!--coloro:blue--><span style="color:blue"><!--/coloro--><a href="http://www.foobar2000.ru/" target="_blank">www.foobar2000.ru - все о любимом аудиоплеере.</a><!--colorc--></span><!--/colorc-->
RUSnet #foobar2000 #miranda.
<a href="http://www.foobar2000.ru/" target="_blank">Изображение</a>

<!--coloro:red--><span style="color:red"><!--/coloro-->Даша, я люблю тебя!<!--colorc--></span><!--/colorc-->
Spike
Генерал-лейтенант
 
Сообщений: 3036
Зарегистрирован: Вт мар 18, 2003 7:34 am
Откуда: Ачинск, Красноярский край
Пункты репутации: 0

Сообщение Shelix » Пн июл 19, 2004 8:19 am

2dvss
Дай пример работы, то бишь исходник и примерную бл.-сх., которую хочешь получить. Из исходника никогда нельзя определить однозначно б.-с.
<span style='color:blue'>Если тебе не нравится, как я излагаю, купи себе у бога копирайт на русский язык. (Борис Гребенщиков)</span>
<span style='color:yellow'>Все это лишь шизофреническая фантазия моего воспаленного мозга...</span>
Shelix
Подполковник
 
Сообщений: 574
Зарегистрирован: Сб апр 05, 2003 9:06 am
Откуда: Казань
Пункты репутации: 0

Сообщение dvss » Пн июл 19, 2004 10:54 am

<!--QuoteBegin--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>Цитата </td></tr><tr><td id='QUOTE'><!--QuoteEBegin-->"налево да, направо нет"<!--QuoteEnd--></td></tr></table><div class='postcolor'><!--QuoteEEnd-->
Мне как раз эот и надо =)

<!--QuoteBegin--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>Цитата </td></tr><tr><td id='QUOTE'><!--QuoteEBegin-->Тем более мне непонятно, как человеческие описания давать таким схемам...<!--QuoteEnd--></td></tr></table><div class='postcolor'><!--QuoteEEnd-->
А описания и ненужны.

Пример:
Код: выделить все
program Z12;
Uses crt;
var i,j,N,k1,k,e,m,z,q,max:byte;
   A,C:array[1..60]of string[100];
   B,B1,D:array[1..60]of integer;
   inp:text;S:array[1..60,1..60]of char;
BEGIN
 clrscr;
 N:=0;
 Assign(inp,'v1z4.in');reset(inp);
 while not(eof(inp)) do begin
                          N:=N+1;
                          readln(inp,A[N])
                        end;
 close(inp);
 m:=1;q:=0;
 for i:=1 to N do
   begin
     k1:=1;
     for j:=1 to length(A[i]) do
       if (ord(A[i,j])>31)and(ord(A[i,j])<64)or(j=length(A[i])) then
         begin
           if j=k1 then begin
                          k1:=k1+1;
                          continue
                        end;
           for z:=1 to m do
             begin
               for k:=k1 to j-1 do
                 if (A[i,k]<>C[z,k-k1+1])or((ord(C[z,j-k1+2])>64)and
                    (ord(C[z,j-k1+2])<91)or(ord(C[z,j-k1+2])>97)and
                    (ord(C[z,j-k1+2])<123)or(ord(C[z,j-k1+2])>127)) then
                   begin
                     e:=e+1;
                     q:=1;
                     break
                   end;
               if q=0 then B[z]:=B[z]+1;
               q:=0
             end;
           if e=m then begin
                         for k:=k1 to j-1 do
                           begin
                             C[m,k-k1+1]:=A[i,k];
                             write(C[m,k-k1+1])
                           end;
                         m:=m+1; writeln;
                       end;
           k1:=j+1;e:=0;
         end;
   end;
 m:=m-1;
 for i:=1 to m do B[i]:=B[i]+1;
 for i:=1 to m do B1[i]:=B[i];
 for i:=1 to m-1 do
   begin
     max:=B1[i];q:=i;
     for j:=i+1 to m do
       if B1[j]>max then begin
                           max:=B1[j];
                           q:=j
                         end;
      B1[q]:=B1[i];
      B1[i]:=max
    end;
 writeln;
 for i:=1 to m do
   begin
     D[i]:=0;
     if B[i]=1 then D[i]:=1
   end;
 for i:=1 to m do
   for j:=1 to m do
     if (B1[i]=B[j])and(D[j]=0) then
       begin
         for z:=1 to 20 do
           if ((ord(C[j,z])>64)and(ord(C[j,z])<91)or(ord(C[j,z])>97)
           and(ord(C[j,z])<123)or(ord(C[j,z])>127)) then write(C[j,z]);
         write(': ',B1[i]);writeln;
         D[j]:=1
       end;
 for j:=1 to m do
   if B1[j]>1 then
     begin
       i:=B1[1];
       for z:=1 to B1[j] do
         begin
           S[i,j]:=chr(178);
           i:=i-1
         end
     end;
 writeln;
 for i:=1 to B1[1] do
   begin
     for j:=1 to m do write(' ',S[i,j]);writeln
   end
END.


А блок схему я понятия не имею как делать =(
<a href='http://dvss.e-baka.net/' target='_blank'>dvss_homepage</a>
dvss
Капитан
 
Сообщений: 152
Зарегистрирован: Ср июн 04, 2003 2:11 pm
Пункты репутации: 0

Сообщение Sh0Ck_filE » Пн июл 19, 2004 2:23 pm

Гм... тут же простейшие обороты... ни классов. ни ООП... Пиши сам! Легче будет... ;)
<!--coloro:red--><span style="color:red"><!--/coloro-->"Для того чтобы быть человеком, надо им какое-то время не быть."<!--colorc--></span><!--/colorc--> ©<a href="http://zhurnal.lib.ru/b/brigadir_j_a/" target="_blank">Ю. А. Бригадир.</a>
<a href="http://counter.li.org/cgi-bin/runscript/display-person.cgi?user=437143" target="_blank">Registered Linux user #437143</a>.
Sh0Ck_filE
Генерал-лейтенант
 
Сообщений: 3474
Зарегистрирован: Пн апр 21, 2003 6:20 pm
Откуда: СССР
Пункты репутации: 0

Сообщение Shelix » Пн июл 19, 2004 5:18 pm

2dvss
Ты где учишься и много ли тебе исходников надо обработать?
Насколько я понимаю, можно написать лишь транслятор, то бишь переводчик, который из паскаля будет переводить в "человеческий" язык и брать разные строчки в разные прямоугольники, овалы и т.д., расставляя стрелочки.

2Sh0Ck_filE
<!--QuoteBegin--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>Цитата </td></tr><tr><td id='QUOTE'><!--QuoteEBegin-->Гм... тут же простейшие обороты... ни классов. ни ООП...<!--QuoteEnd--></td></tr></table><div class='postcolor'><!--QuoteEEnd-->
Хм. Объясни мне, как классы и ООП усложняют создание блок-схем?
<!--QuoteBegin--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>Цитата </td></tr><tr><td id='QUOTE'><!--QuoteEBegin-->Пиши сам! Легче будет... Изображение<!--QuoteEnd--></td></tr></table><div class='postcolor'><!--QuoteEEnd-->
Юморист. Человек не может из исходника блок-схему нарисовать, а ты ему пиши сам :-)
Последний раз редактировалось Shelix Пн июл 19, 2004 5:20 pm, всего редактировалось 1 раз.
<span style='color:blue'>Если тебе не нравится, как я излагаю, купи себе у бога копирайт на русский язык. (Борис Гребенщиков)</span>
<span style='color:yellow'>Все это лишь шизофреническая фантазия моего воспаленного мозга...</span>
Shelix
Подполковник
 
Сообщений: 574
Зарегистрирован: Сб апр 05, 2003 9:06 am
Откуда: Казань
Пункты репутации: 0

Сообщение С_д » Пн июл 19, 2004 5:19 pm

2dvss
Пиши в блоке сразу несколько операций - так будет проще строить блок-схему. В этом же виде её и можно будет оставить, если это, конечно, допустимо.

Загрузил твою прогу в автосхему - результат был выдан без каких-либо видимых ошибок.
Здавать можно уже в таком виде, если смотреть на неё мельком будут.

Для чего конкретно эти блок-схемы нужны? Может, не стоит так париться? :-)
Fly like proud eagle little polly :-)
С_д
Сержант
 
Сообщений: 28
Зарегистрирован: Пт май 21, 2004 5:31 am
Пункты репутации: 0

Сообщение Sh0Ck_filE » Пн июл 19, 2004 6:01 pm

2Shelix
<!--QuoteBegin--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>Цитата </td></tr><tr><td id='QUOTE'><!--QuoteEBegin-->Юморист. Человек не может из исходника блок-схему нарисовать, а ты ему пиши сам :-) <!--QuoteEnd--></td></tr></table><div class='postcolor'><!--QuoteEEnd-->
знаешь, я бы заманался сам рисовать... Дешевле здоровью если прогу напишешь, простейший парсер... ;)
<!--coloro:red--><span style="color:red"><!--/coloro-->"Для того чтобы быть человеком, надо им какое-то время не быть."<!--colorc--></span><!--/colorc--> ©<a href="http://zhurnal.lib.ru/b/brigadir_j_a/" target="_blank">Ю. А. Бригадир.</a>
<a href="http://counter.li.org/cgi-bin/runscript/display-person.cgi?user=437143" target="_blank">Registered Linux user #437143</a>.
Sh0Ck_filE
Генерал-лейтенант
 
Сообщений: 3474
Зарегистрирован: Пн апр 21, 2003 6:20 pm
Откуда: СССР
Пункты репутации: 0

Сообщение dvss » Пн июл 19, 2004 7:47 pm

<!--QuoteBegin--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>Цитата </td></tr><tr><td id='QUOTE'><!--QuoteEBegin-->Ты где учишься и много ли тебе исходников надо обработать?<!--QuoteEnd--></td></tr></table><div class='postcolor'><!--QuoteEEnd-->
Учусь в МАИ (Московский Авиационный Институт). А обработать надо 10 исходников =(
<!--QuoteBegin--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>Цитата </td></tr><tr><td id='QUOTE'><!--QuoteEBegin-->Здавать можно уже в таком виде, если смотреть на неё мельком будут. <!--QuoteEnd--></td></tr></table><div class='postcolor'><!--QuoteEEnd-->
Дык эта автосхема ни одной стрелочки даже не поставила...
<!--QuoteBegin--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>Цитата </td></tr><tr><td id='QUOTE'><!--QuoteEBegin-->Для чего конкретно эти блок-схемы нужны? Может, не стоит так париться? :-) <!--QuoteEnd--></td></tr></table><div class='postcolor'><!--QuoteEEnd-->
Стоит...Мне они нужны чтобы отчет по прогам оформить...а без этого сессию незакрывают...
<a href='http://dvss.e-baka.net/' target='_blank'>dvss_homepage</a>
dvss
Капитан
 
Сообщений: 152
Зарегистрирован: Ср июн 04, 2003 2:11 pm
Пункты репутации: 0

След.

Вернуться в Software

Кто сейчас на форуме

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

cron