PDA

View Full Version : Помогите сделать программу


Fresh
Dec 27, 2006, 09:23
У меня такое задание по курсовой, нужно убрать лишние пробелы и комменты которые заданы ключами:
там нужно удалить все пробелы в текстовом файле, все комменты /* и //, кроме тех которые заданы специальным ключом коммандной строки.
Коммандная строка программы:
имя_программа[-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;
}

Помогите доделать программу.
Это моя курсовая
Заранее благодарен

AvDav
Dec 27, 2006, 10:32
тут за даром никто твою работу не сделает. либо делай сам /будут конкретные вопросы уже можешь спрашивать/ либо плати деньги.

Fresh
Dec 27, 2006, 12:10
тут за даром никто твою работу не сделает. либо делай сам /будут конкретные вопросы уже можешь спрашивать/ либо плати деньги.
Как мне реализовать удаление пробелов и комментов в файле, как записать?

Lyoshkin
Jan 2, 2007, 14:47
тут за даром никто твою работу не сделает. либо делай сам /будут конкретные вопросы уже можешь спрашивать/ либо плати деньги.

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

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

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

УРААААААААААААААААААААААА

AvDav
Jan 2, 2007, 16:17
Вот таких побольше, я и сам к тебе обращусь за помощью если можно, тока давай до конца - без какой либо корысти, без беседы в частности :)

Lyoshkin
Jan 4, 2007, 12:47
Вот таких побольше, я и сам к тебе обращусь за помощью если можно, тока давай до конца - без какой либо корысти, без беседы в частности :)

Оно без корысти, но с беседой...
а як же....

ByTheWay
Feb 2, 2007, 21:39
Помогите сделать программу
Помошь запаздала ..
злые слухи говорят что герой держался до последнега !!

Hrach_Techie
Feb 7, 2007, 07:27
У меня такое задание по курсовой, нужно убрать лишние пробелы и комменты которые заданы ключами:
там нужно удалить все пробелы в текстовом файле, все комменты /* и //, кроме тех которые заданы специальным ключом коммандной строки.
Коммандная строка программы:
имя_программа[-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;

ByTheWay
Feb 7, 2007, 10:02
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;