Сейчас на форуме: tyns777 (+5 невидимых) |
![]() |
eXeL@B —› Программирование —› cgi на с++ или perl(нужна мини-прога) |
. 1 . 2 . >> |
Посл.ответ | Сообщение |
|
Создано: 15 августа 2007 17:42 · Личное сообщение · #1 есть задание "Палиндром - это симметричная строка, т. е. она одинаково пишется как слева направо, так и справа налево. Вы должны написать программу, которая по заданной строке определяет минимальное количество символов, которые необходимо вставить в строку для образования палиндрома. Например, вставкой двух символов строка "Ab3bd" может быть преобразована в палиндром ("dAb3bAd" или "Adb3bdA"), а вставкой менее двух символов палиндром в этом примере получить нельзя. Строка: Ab3bd Вставить: 2" кто сможет напишите плиз на с++ код получения параметра программой(допустим назовем параметр name) сам алгоритм для палиндрома я сделаю сам... или нужна эта же прога но на perl, но тогда нужно полную прогу, включая алгоритм, так как я никогда не программировал на перле.. может кому-то будет полезно попрограмммировать cgi, вспомнит старые навыки ;) помогите пожалусто! ![]() |
|
Создано: 18 августа 2007 16:07 · Личное сообщение · #2 |
|
Создано: 18 августа 2007 17:12 · Личное сообщение · #3 |
|
Создано: 18 августа 2007 17:30 · Личное сообщение · #4 |
|
Создано: 18 августа 2007 19:16 · Личное сообщение · #5 |
|
Создано: 18 августа 2007 22:05 · Личное сообщение · #6 #include <windows.h>
На блин. сбоянил с World C++. Аттачем не получилось. ----- Researcher ![]() |
|
Создано: 20 августа 2007 01:25 · Личное сообщение · #7 пытался откомпилировать код overwriterа но находит 4 ошибки в этих строках: 1) #include <iostream> Unable to open include file 'iostream' 2) using namespace std; Declaration Syntax error 3) cout<<"Content-Type: text/html\n\n"; Undefined Symbol 'cout' 4) if(GetEnvironmentVariable("QUERY_STRING",comment,256)) function 'GetEnvironmentVariable' should have a prototype кароче я так подумал что ошибка может быть в этом : #include <iostream> и дописал к файлу .h так: #include <iostream.h> но 2 ошибки все-равно остались - 2) и 4) из вышеперечисленных. Так что снова help. ЗЫ: ваще ктонить из тех кто тему читает пробегитесь хотя бы бегом по строчкам этого кода который выложил overwriter, я сначала даж боялся его компилить так как есть сомнения что надо мной не прикалываются;) , так как вызывают подозрения слишком уж большой размер вроде бы не очень сложного кода, странный URL (http://www.pagel.by.ru>www.pagel.by.ru) внутри кода и обращение к windows.h (гыгы поди код ченить с виндой делает или отправляет ченить на тот URL;) ). Угу а еще такой вопрос: если код действительно верный (правда пока с ошибками), то что он делает: только принимает параметр, или еще и находит решение задачи с палиндромом, или делает еще че-то другое?? FillEX пишет: В World C++ есть статьи по программированию сценариев на С++ смотри а что такое WORLD C++?? это типа сайт какойто или че? просто я можно сказать относительно недавно к инету подсоединился, да и руки до этого времени еще не доходили полазать по полезным сайтам ;) FillEX пишет: самому не смешно? это как попросить "хелло ворлд" написать ну кто знает может тут сетевых прогеров ваще нету, а это просто была попытка хоть как-нить приманить хоть когонить к решению моей задачки;) к тому же если вы тут все такие умные программеры что для вас моя задача как "хелло ворлд" то почему бы не решить мне мою задачку полностью (у вас 3 минуты на это потребуется;) ). asd пишет: Не мы а вы В сети есть уроки по cgi для с++ ищи. Или можешь подождать до понедельника я ссылки выложу. угу выложи, если там все кратко и понятно, а то рабираться времени не будет с 50 тоннами писанины. кстати вот нашел ссылку fort.stup.ac.ru/wmaster/books/magazine/pcmag/9707/079726.htm там по ссылке есть небольшой код cgi проги, правда он использует базу даных(по названию кухни ищет ресторан) что мне не надо, вот кусок кода оттуда: /* Получаем строку запроса QUERY_STRING */ pQuery = getenv("QUERY_STRING"); /* Выделяем первую часть пары имя=значение */ if (pQuery = strchr(pQuery, '=')) pQuery++; /* Получаем тип требующегося ресторана */ GetRestaurant (pQuery); всем наверно понятно что делает этот маленький кусочег, но есть вопрос по вот этому: /* Выделяем первую часть пары имя=значение */ if (pQuery = strchr(pQuery, '=')) pQuery++; как написано там на сайте, с помощью этого кода мы отделяем значение переменной от ее имени, хотелось бы понять(это значит что мне надо объяснить!) как работает этот кусок (что в нем значит strchr(pQuery, '='), так же не понятно как мы к переменной pQuery, которая у нас содержит текст(название кухни), прибавляем единицу(так как pQuery++ это pQuery=pQuery+1 как я понимаю). Ну вобщем даже не понимаю как это работает можно догадаться, что в итоге после этих всех действий получаем pQuery равную значению переменной QUERY_STRING без ее имени. Мне это нужно узнать, так как мне надо не только отделить значение переменной QUERY_STRING в одну переменную моего сиджеая, но и вписать каждый символ значения QUERY_STRING в разные переменные(так как задача то про палиндром). Как нужно изменить этот код, чтобы он подошел для моей задачи?? ![]() |
|
Создано: 20 августа 2007 06:42 · Личное сообщение · #8 andruja Обещаная ссылка www.inattack.ru/article/7.html#6 andruja пишет: а что такое WORLD C++?? А в гугл не судьба сходить? andruja пишет: что в нем значит strchr(pQuery, '=' А MSDN поюзать как я понимаю опять же религия мешает Я так понимаю, что си ты вообще не знаешь. А без этого и с такими замашками andruja пишет: если там все кратко и понятно, а то рабираться времени не будет с 50 тоннами писанины. тебе прямая дорога искать студента программера, которому нужны деньги. ![]() |
|
Создано: 20 августа 2007 10:07 · Личное сообщение · #9 andruja, вообще то код, который предложил overwriter, будет компилироваться только на Visual Studio 2003 и выше (либо компилятором, который нормално поддерживает стандарт C++). А вообще, asd прав - ищи кого нибудь, кто хоть как умеет на C++ писать. Твоих знаний не факт, что на "Hello, world" хватит. ![]() |
|
Создано: 20 августа 2007 11:33 · Личное сообщение · #10 знаю я с++ тока немнога но алгоримтм закодировать я смогу, мне ТОЛЬКО код приема строки нужен и ВСЕ(и комменты по поводу что в какую переменную принялось, чтобы дальше с переменными работать в алгоритме). кстати подскажите какой можно придумать алгоритм для этой задачи, я пока нашел только корявый алгоритм (сильно зацикленный), который будет тем дольше работать, чем больше кол-во символов входной строки и чем они будут менее повторяемые(всмысле очень долго наверно будет работать, так что нужен алгоритм попроще и побыстрее) ![]() |
|
Создано: 20 августа 2007 11:42 · Личное сообщение · #11 кстати если overwriter написал правильный код то тогда мне хотя бы надо узнать в какую переменную он принимает стоку(в какойто массив?)(я из этого кода никогда этого не пойму), а потом мне просто нужно будет дописать функцию с алгоритмом и с этими переменными и потом вывести штмл-код?? а так как у меня он не компилится то может ктонить сможет откомпилить мой код когда я его напишу и сюда выложу, а потом сюда екзешником зальете?? ![]() |
|
Создано: 20 августа 2007 12:44 · Личное сообщение · #12 Замени GetEnvironmentVariable на getenv - первая это WinAPI функция, вторая из stdlib.h, т.е. не зависит от системы. У них разный формат, посмотри в MSDN. Тебе нужна только getenv("QUERY_STRING"); - здесь находятся параметры, которые передавались в строке URL. Парсишь её и вытаскиваешь нужные данные. ![]() |
|
Создано: 20 августа 2007 12:53 · Личное сообщение · #13 |
|
Создано: 20 августа 2007 13:23 · Личное сообщение · #14 |
|
Создано: 20 августа 2007 14:27 · Личное сообщение · #15 Pro100ya это готовая реализация уже всей проги полностью вместе с алгоритмом?? ты сам делал?? что сейчас делать с этим файлом, всмысле просто слить на сервак в cgi-bin и он будет работать?? с экзешником с++ вроде бы надо было бы чтото настраивать на сервере, так как с++ это компилируемый язык а не интерпретируемый, а с делфи что нить нужно настроить или достаточно просто слить?? еще какие там переменные использованы, всмысле какую переменную писать в веб-форму, или это не важно?? ![]() |
|
Создано: 20 августа 2007 14:47 · Личное сообщение · #16 |
|
Создано: 20 августа 2007 14:58 · Личное сообщение · #17 а как теперь сделать из него cgi?? когда мне другой cgi сделали на перле у файла было расширение cgi, а чтобы запускался сишный (или дельфовский) cgi я думал достаточно залить екзешник на сервак(и чтото прописать в настройках сервака). или нужен еще какойто софт чтобы както преобразовать екзешник в cgi?? ![]() |
|
Создано: 20 августа 2007 15:14 · Личное сообщение · #18 |
|
Создано: 20 августа 2007 15:41 · Личное сообщение · #19 |
|
Создано: 20 августа 2007 16:44 · Личное сообщение · #20 Pro100ya пишет: Сорри, это готовый алго, но слова надо вводить вручную. а твой алго не может чтоль работать как cgi??(чтото я не заметил ни одного выходного нтмл-тега). мне нужен именно cgi, в который я не знаю как принять входную строку с браузера. Может ты добавишь туда функцию, которая будет принимать строку прямо с браузера ?? ![]() |
|
Создано: 20 августа 2007 16:48 · Личное сообщение · #21 вот это будет моя форма на странице <html> <title>палиндромчег</title> <head>форма для ввода любой строки</head> <form action="адрес сервака/cgi-bin" method=GET> Введите любую строку: <input type=text maxlength=10 name=stroka> <p><input type=submit value=Send> </form> </html> все намана написано или не буит работать?? ![]() |
|
Создано: 20 августа 2007 18:49 · Личное сообщение · #22 Пробуй, надеюсь у тя есть на чем тестить. Форма: <HTML> <HEAD> <TITLE>палиндромчег</TITLE> </HEAD> <BODY> <FORM method="POST" action="адрес сервака/cgi-bin/Project1.cgi"> Введите любую строку: <input type=text maxlength=10 name=stroka> <p><input type=submit value=Send></FORM> </BODY> </HTML> ![]() ![]() |
|
Создано: 20 августа 2007 20:55 · Личное сообщение · #23 блин зарегился щас на убогом хостинге www.wallst.ru всунул в паблик-нтмл файл index.html с формой и етот убожеский сервак сразу же меня и забанил(при попытке открыть crevedko.wallst.ru/ (это мой сайт) пишет сразу Forbidden и перенаправляет на рекламную страницу). ктонить может подсказать какойнить нормальный бесплатный хостинг поддерживающий cgi, чтобы заценить всю мощь етого сиждеая? ![]() |
|
Создано: 20 августа 2007 20:59 · Личное сообщение · #24 |
|
Создано: 20 августа 2007 21:19 · Личное сообщение · #25 |
|
Создано: 20 августа 2007 22:03 · Личное сообщение · #26 |
|
Создано: 20 августа 2007 22:06 · Личное сообщение · #27 |
|
Создано: 20 августа 2007 22:12 · Личное сообщение · #28 |
|
Создано: 20 августа 2007 22:37 · Личное сообщение · #29 |
|
Создано: 20 августа 2007 23:26 · Личное сообщение · #30 |
. 1 . 2 . >> |
![]() |
eXeL@B —› Программирование —› cgi на с++ или perl(нужна мини-прога) |