ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Блок схема.
  #1  
Старый 18.04.2009, 20:54
Аватар для Ch3ck
Ch3ck
Познавший АНТИЧАТ
Регистрация: 09.06.2006
Сообщений: 1,359
Провел на форуме:
5301021

Репутация: 1879


По умолчанию Блок схема.

Мужики вери нид хэлп(выручайте короче)...
Завтра нужно сдавать курсовик, а эти блок-схемы вообще забыл как рисовать...
Вот постановка задачи:
Код:
Написать программу, которая открывает текстовый файл-список, содержащий имена файлов по одному на строке. Программа подсчитывает количество предложений во всех файлах и выводит предложения в другой файл по одному на строке в порядке уменьшения длины.
Вот сам код:
Код:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <windows.h>

char *filename;
char *tmp_str;
char *result_str;
FILE *open_f;
FILE *result_f;
char **str_array;
int i, j, count, ind, max, length, jlen;
FILE *file_list;
FILE *result;
char list_path[256];

void rus (char*src) 
{
    char dst[256];
    CharToOem(src,dst);
    printf("%s\n", dst);
}

int main(int argc, char *argv[])
{
    filename = (char*)malloc(256);
    tmp_str = (char*)malloc(1024);
    result_str = (char*)malloc(1024);
    str_array = (char**)malloc(8192);
    i = 0; j=0; count = 0;
  
	rus("Введите имя файла содержащего пути к другим файлам:");
	scanf("%s", list_path);
    file_list = fopen(list_path, "r");
	if(!file_list)
	{
		perror("Error opening file\n");
		return -1;
    }
    while(!feof(file_list))
    {
        fscanf(file_list, "%s\n", filename); // \n - to avoid the new line symbol
        printf("Opening %s\n", filename);
        open_f = fopen(filename, "r");
        if(!open_f)
        {
            perror("Error opening file\n");
            return -1;
        }
        
        //read files by word
        //strcat combines words to expressions
        strcpy(result_str,""); //clear string
        while(!feof(open_f))
        {
            fscanf(open_f, "%s", tmp_str);
            if((strchr(tmp_str,'.') == NULL) && (strchr(tmp_str,'!') == NULL) && (strchr(tmp_str,'?') == NULL))
            {
               strcat(result_str, tmp_str);
               strcat(result_str, " ");
               continue;
            }
            else
            {
                strcat(result_str, tmp_str);
            }
            str_array[i] = (char*)malloc(strlen(result_str));
            strcpy(str_array[i++], result_str);
            strcpy(result_str,""); //clear string
        }
        fclose(open_f);
        
        
    }
    fclose(file_list);
    count = i;
    
        for(j=0;j<count;j++)
       rus(str_array[j]);
       printf("\n\n\n\n");
    
    for(i=0;i<count;i++)
    {
       ind = i; length = strlen(str_array[i]); max =0;
       
       for(j=i+1;j<count;j++)
       {
          jlen = strlen(str_array[j]);
          if(jlen > length && jlen > max)
          {
                ind = j;
                max = jlen;
          }
       }
         
       if(ind != i)
       {
          strcpy(tmp_str, str_array[ind]);
          strcpy(str_array[ind], str_array[i]);
          strcpy(str_array[i], tmp_str);
       }
    }
          
    for(j=0;j<count;j++)
       rus(str_array[j]);

	rus("Запись в результирующий файл");
	
	result = fopen("result_file.txt","w");
	for(j=0;j<count;j++)
	{
        fprintf(result, "%s\n", str_array[j]);
		free(str_array[j]);
	}
	fclose(result);
    
    return 0;
}
Помогайте рисовать...
 
Ответить с цитированием

  #2  
Старый 18.04.2009, 21:12
Аватар для оlbaneс
оlbaneс
Moderator - Level 7
Регистрация: 05.11.2007
Сообщений: 894
Провел на форуме:
5609275

Репутация: 1474


По умолчанию

оффтоп, конечно же, но не смог удержаться. при написании кода для большего понимания сначала рисуется схема, а потом уже сам код.
 
Ответить с цитированием

  #3  
Старый 18.04.2009, 21:15
Аватар для Ch3ck
Ch3ck
Познавший АНТИЧАТ
Регистрация: 09.06.2006
Сообщений: 1,359
Провел на форуме:
5301021

Репутация: 1879


По умолчанию

Это только в книжках так пишут...
Ну может кто-то знает...
 
Ответить с цитированием

  #4  
Старый 18.04.2009, 22:08
Аватар для Qwazar
Qwazar
Leaders of Antichat - Level 4
Регистрация: 02.06.2005
Сообщений: 1,411
Провел на форуме:
10605912

Репутация: 4693


По умолчанию

Цитата:
Сообщение от оlbaneс  
оффтоп, конечно же, но не смог удержаться. при написании кода для большего понимания сначала рисуется схема, а потом уже сам код.
Ещё один оффтоп - Блок-схемы никто никогда и нигде не рисует, не считая придурошных преподов заставляющих это делать несчастных студентов.
__________________
Я отдал бы немало за пару крыльев,
Я отдал бы немало за третий глаз
За руку на которой четырнадцать пальцев
Мне нужен для дыхания другой газ..

Мой блог:http://qwazar.ru/.
 
Ответить с цитированием

  #5  
Старый 18.04.2009, 22:15
Аватар для оlbaneс
оlbaneс
Moderator - Level 7
Регистрация: 05.11.2007
Сообщений: 894
Провел на форуме:
5609275

Репутация: 1474


По умолчанию

ну может не блок-схема, но на бумажке я иногда рисую что куда должно обращаться.
бывает сел писать и по ходу пьесы запутался как хотел исполнить.
 
Ответить с цитированием

  #6  
Старый 18.04.2009, 22:37
Аватар для gold-goblin
gold-goblin
Познавший АНТИЧАТ
Регистрация: 26.03.2007
Сообщений: 1,095
Провел на форуме:
5265510

Репутация: 455


По умолчанию

Цитата:
2 Ch3сk Ну сначала обьявляем перменные в паралеллограме, потом условия в прямоугольнике ну и вывод)
ээ переменные в прямоугольнике, в ромбе if, начало что-то типа овала тагже как и конец
 
Ответить с цитированием

  #7  
Старый 18.04.2009, 22:45
Аватар для kfor
kfor
Участник форума
Регистрация: 01.09.2005
Сообщений: 194
Провел на форуме:
818095

Репутация: 34
Отправить сообщение для kfor с помощью ICQ
По умолчанию

http://ru.wikipedia.org/wiki/Блок-схема
 
Ответить с цитированием

  #8  
Старый 18.04.2009, 22:48
Аватар для .ATK
.ATK
Участник форума
Регистрация: 20.02.2009
Сообщений: 224
Провел на форуме:
5075819

Репутация: 274
По умолчанию

Цитата:
Сообщение от Qwazar  
Ещё один оффтоп - Блок-схемы никто никогда и нигде не рисует, не считая придурошных преподов заставляющих это делать несчастных студентов.
))ппц, в крупных компаниях их рисуют чувак...
 
Ответить с цитированием

  #9  
Старый 18.04.2009, 22:49
Аватар для Ch3ck
Ch3ck
Познавший АНТИЧАТ
Регистрация: 09.06.2006
Сообщений: 1,359
Провел на форуме:
5301021

Репутация: 1879


По умолчанию

kfor... меня удивляют такие люди как ты (не в обиду...)
Я попросил добрых людей нарисовать...
 
Ответить с цитированием

  #10  
Старый 18.04.2009, 23:03
Аватар для kfor
kfor
Участник форума
Регистрация: 01.09.2005
Сообщений: 194
Провел на форуме:
818095

Репутация: 34
Отправить сообщение для kfor с помощью ICQ
По умолчанию

Нарисовать что? По твоей проге блоксхему?
Ты написал что подзабыл как рисовать, а не ясно попросил что бы люди тебе нарисовали.
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужна схема деактивирования так сказать) aka_k4 Электроника и Фрикинг 2 11.03.2009 15:11
Схема задержки импульса на 4 мкс Koller Болталка 3 13.12.2006 18:25
Как своими руками превратить блок питания в обогреватель dinar_007 Аппаратное обеспечение 3 14.04.2006 22:26
Схема Lolik Схемы и программы 8 29.10.2005 10:57



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ