Armenian Knowledge Base  

Go Back   Armenian Knowledge Base > Technical sections > Languages, Compilers, Interpreters > Algorithms
Register

Reply
 
LinkBack Thread Tools
Old 27.12.2006, 09:23   #1
Младенец
 
Join Date: 12 2006
Location: Kiev
Posts: 7
Downloads: 0
Uploads: 0
Reputation: 0 | 0
Default Помогите сделать программу

У меня такое задание по курсовой, нужно убрать лишние пробелы и комменты которые заданы ключами:
там нужно удалить все пробелы в текстовом файле, все комменты /* и //, кроме тех которые заданы специальным ключом коммандной строки.
Коммандная строка программы:
имя_программа[-p prefix] [-in file] [-list file] [-out file]
Ключ -р (если он есть) задёт префикс prefix комментария, который должен оставаться в входном файле (например, -p/*-comp означает оставить комменты, которые начинаются с /*-comp-)ж
Ключ -in (если он есть) задаёт входной файл или файлы (при использовании шаблона имён), которые идут сразу после ключа через пропуск;
Ключ -list (если он есть) задаёт текстовый файл, который идёт сразу после ключа черз пропуск, со списком спецификаций входных файлов (одна строка - одна спецификация файла);
Ключ -out (если он есть) задаёт префикс имени файла/ов результата (тоесть имени выходного файла происходит от имени входного файла лописыванием префикса);
если ключ неуказан, то префиксом по умолчанию брать символ ~.

#include <stdlib.h>
#include <stdio.h>
int main(void)

{
FILE *fp;
FILE *fopen(const char *filename, const char *mode);
int fputc(int c,FILE *fp);
char *fgets(char *str, int n,FILE *fp);
int fprintf(FILE *fp, char *fmt,...);
char ch,filename[40], mode[5];
int count;

while(1)
{

if((fp = fopen("INPUT.TXT", "a+")) != NULL)
{
fprintf(stderr,"Error opening file.");
exit(1);

}
printf("\nImmediately after opening, position = %ld", ftell(fp));

//printf("\nSuccessfull opening %s in mode %s.\n", filename, mode);
fclose(fp);
if((ch = getc(stdin))=='x')
break;


}

//fprintf(stderr, "\nError opening file %s in mode %s.\n", filename, mode);
{
int count;
system("PAUSE");
return 0;
}


Тут вот исходник кода, но он на С не работает, там одна часть написана на PHP
<?
$string="Здесь много лишних пробелов!";
$string=ereg_replace(" +"," ",$string);
echo $string;
?>

С

FILE * fIn = fopen("d:\\1.hex", "r");
int ch;
std::string s;
while (EOF != (ch = fgetc(fIn)))
{
s += (char) ch;
}

Помогите доделать программу.
Это моя курсовая
Заранее благодарен
Reply With Quote
Old 27.12.2006, 10:32   #2
The splendid
 
AvDav's Avatar
 
Join Date: 07 2004
Location: Universe
Age: 36
Posts: 3,413
Downloads: 22
Uploads: 0
Reputation: 222 | 3
Default

тут за даром никто твою работу не сделает. либо делай сам /будут конкретные вопросы уже можешь спрашивать/ либо плати деньги.
Reply With Quote
Old 27.12.2006, 12:10   #3
Младенец
 
Join Date: 12 2006
Location: Kiev
Posts: 7
Downloads: 0
Uploads: 0
Reputation: 0 | 0
Default

Quote:
Originally Posted by AvDav View Post
тут за даром никто твою работу не сделает. либо делай сам /будут конкретные вопросы уже можешь спрашивать/ либо плати деньги.
Как мне реализовать удаление пробелов и комментов в файле, как записать?
Reply With Quote
Old 02.01.2007, 14:47   #4
Студент
 
Lyoshkin's Avatar
 
Join Date: 09 2002
Location: Yerevan
Posts: 385
Downloads: 0
Uploads: 0
Reputation: 12 | 3
Default

Quote:
Originally Posted by AvDav View Post
тут за даром никто твою работу не сделает. либо делай сам /будут конкретные вопросы уже можешь спрашивать/ либо плати деньги.
Деньги, как это пошло... Мельчает сообщество форума, определенно мельчает... Вот раньше были люди - не чета нынешним ...
Милейшему Acid-у давно пора закрыть этот мещанский ресурс, обитатели которого думают в основном только о желтом змие (((

Что касается милого Фрешика
Потерпи до окончания новогодних праздненств, отрезвею я (возможно) и может накатаю тебе чудесную курсовую, особливо ежели в качестве благодарности потом позабавишь бабулю свецкой беседой..
Что касается АвДава - амот еще раз амот. Стяжателям наше нет - причем суровое...

Кстати всех с новым годом... Счастья и здоровья...

УРААААААААААААААААААААААА
Reply With Quote
Old 02.01.2007, 16:17   #5
The splendid
 
AvDav's Avatar
 
Join Date: 07 2004
Location: Universe
Age: 36
Posts: 3,413
Downloads: 22
Uploads: 0
Reputation: 222 | 3
Default

Вот таких побольше, я и сам к тебе обращусь за помощью если можно, тока давай до конца - без какой либо корысти, без беседы в частности
Reply With Quote
Old 04.01.2007, 12:47   #6
Студент
 
Lyoshkin's Avatar
 
Join Date: 09 2002
Location: Yerevan
Posts: 385
Downloads: 0
Uploads: 0
Reputation: 12 | 3
Default

Quote:
Originally Posted by AvDav View Post
Вот таких побольше, я и сам к тебе обращусь за помощью если можно, тока давай до конца - без какой либо корысти, без беседы в частности
Оно без корысти, но с беседой...
а як же....
Reply With Quote
Old 02.02.2007, 21:39   #7
User
 
ByTheWay's Avatar
 
Join Date: 07 2006
Location: Yerevan
Age: 36
Posts: 916
Downloads: 5
Uploads: 0
Reputation: 35 | 3
Default

Quote:
Помогите сделать программу
Помошь запаздала ..
злые слухи говорят что герой держался до последнега !!
Reply With Quote
Old 07.02.2007, 07:27   #8
★★★★★★★★★★★★★
 
Hrach_Techie's Avatar
 
Join Date: 08 2004
Location: London, UK
Age: 38
Posts: 16,531
Downloads: 8
Uploads: 0
Reputation: 482 | 6
Default

Quote:
Originally Posted by Fresh View Post
У меня такое задание по курсовой, нужно убрать лишние пробелы и комменты которые заданы ключами:
там нужно удалить все пробелы в текстовом файле, все комменты /* и //, кроме тех которые заданы специальным ключом коммандной строки.
Коммандная строка программы:
имя_программа[-p prefix] [-in file] [-list file] [-out file]
Ключ -р (если он есть) задёт префикс prefix комментария, который должен оставаться в входном файле (например, -p/*-comp означает оставить комменты, которые начинаются с /*-comp-)ж
Ключ -in (если он есть) задаёт входной файл или файлы (при использовании шаблона имён), которые идут сразу после ключа через пропуск;
Ключ -list (если он есть) задаёт текстовый файл, который идёт сразу после ключа черз пропуск, со списком спецификаций входных файлов (одна строка - одна спецификация файла);
Ключ -out (если он есть) задаёт префикс имени файла/ов результата (тоесть имени выходного файла происходит от имени входного файла лописыванием префикса);
если ключ неуказан, то префиксом по умолчанию брать символ ~.

#include <stdlib.h>
#include <stdio.h>
int main(void)

{
FILE *fp;
FILE *fopen(const char *filename, const char *mode);
int fputc(int c,FILE *fp);
char *fgets(char *str, int n,FILE *fp);
int fprintf(FILE *fp, char *fmt,...);
char ch,filename[40], mode[5];
int count;

while(1)
{

if((fp = fopen("INPUT.TXT", "a+")) != NULL)
{
fprintf(stderr,"Error opening file.");
exit(1);

}
printf("\nImmediately after opening, position = %ld", ftell(fp));

//printf("\nSuccessfull opening %s in mode %s.\n", filename, mode);
fclose(fp);
if((ch = getc(stdin))=='x')
break;


}

//fprintf(stderr, "\nError opening file %s in mode %s.\n", filename, mode);
{
int count;
system("PAUSE");
return 0;
}


Тут вот исходник кода, но он на С не работает, там одна часть написана на PHP
<?
$string="Здесь много лишних пробелов!";
$string=ereg_replace(" +"," ",$string);
echo $string;
?>

С

FILE * fIn = fopen("d:\\1.hex", "r");
int ch;
std::string s;
while (EOF != (ch = fgetc(fIn)))
{
s += (char) ch;
}

Помогите доделать программу.
Это моя курсовая
Заранее благодарен
process (<clock>)
begin
if (<clock>'event and <clock> = '0'>) then
if <reset> = '1' then
<statements>;
else
<statements>;
end if;
end if;
end process;
Reply With Quote
Old 07.02.2007, 10:02   #9
User
 
ByTheWay's Avatar
 
Join Date: 07 2006
Location: Yerevan
Age: 36
Posts: 916
Downloads: 5
Uploads: 0
Reputation: 35 | 3
Default

Quote:
Originally Posted by Hrach_Techie View Post
process (<clock>)
begin
if (<clock>'event and <clock> = '0'>) then
if <reset> = '1' then
<statements>;
else
<statements>;
end if;
end if;
end process;
Virtuozno napisano kollega, vash professionalizm ja srazu ocenil, no po moemu tam koe chto nado esho darabotat'

#include <deliberate.h>
process (<clock>)
begin
if (<clock>'event and <clock> = '0'>) then
if <reset> = '1' then
List<Integer> lst = new ArrayList<Integer>;
lst.add(null);
int x = 1 + lst.get(0);
else
<statements>;
end if; end else
int count;
system("REMOVE ALL SPACES AND COMMENTS");
system("PAUSE");
WHILE (lst == null & isallOK == false)
system("DO SOMETHING!!!");
else if CRASH;;
end if;
end process;
__________________
stop your eyes from flowing out
Reply With Quote
Old 12.03.2016, 20:01   #10
The splendid
 
AvDav's Avatar
 
Join Date: 07 2004
Location: Universe
Age: 36
Posts: 3,413
Downloads: 22
Uploads: 0
Reputation: 222 | 3
Default

Интересно, чем всё закончилось.
Я дал идею алгоритма.
Дальше - дело техники.
А так - написал бы за какие нибудь 40 баксов.
Reply With Quote
Sponsored Links
Reply

Thread Tools


На правах рекламы:
реклама

All times are GMT. The time now is 14:00.


Powered by vBulletin® Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.