ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
 |
|

31.08.2008, 00:48
|
|
Участник форума
Регистрация: 31.08.2006
Сообщений: 149
Провел на форуме: 1763379
Репутация:
155
|
|
как в с++ разделить 127.0.0.1:8080 в массив
к примеру на php:
$address = "127.0.0.1:8080";
$array = explode(":", $address);
echo $array[0]." - ".$array[1];
и как сделать на си++ примерно так (php):
foreach($array as $key => $value)
echo $key." ".$value."\n";
|
|
|

31.08.2008, 02:00
|
|
Участник форума
Регистрация: 18.08.2008
Сообщений: 159
Провел на форуме: 750247
Репутация:
92
|
|
Код:
// test.cpp : Defines the entry point for the console application.
//
#include <iostream>
#include <cstdlib>
#include <fstream>
#include <string>
#include <vector>
#include "stdafx.h"
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
vector<string> vectIP;
vector<string> vectPort;
string strValues;
fstream File("c:\\proxies.txt");
while (!File.eof())
{
getline(File, strValues, ':');
vectIP.push_back(strValues);
getline(File, strValues, '\n');
vectPort.push_back(strValues);
}
for (unsigned int i = 0;i < vectIP.size();++i)
{
cout << vectIP[i] << ":" << vectPort[i] << endl;
}
File.close();
system("pause");
return 0;
}
Это для файла.
Если у тебя строка, то тут проще.
Код:
// test.cpp : Defines the entry point for the console application.
//
#include <iostream>
#include <cstdlib>
#include <string>
#include "stdafx.h"
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
string strSomething = "127.0.0.1:8808";
int nPos = strSomething.find(':');
string strIP = strSomething.substr(0, nPos);
string strPort = strSomething.substr(nPos+1);
cout << strIP << ":" << strPort << endl;
system("pause");
return 0;
}
Последний раз редактировалось 4p3; 31.08.2008 в 02:05..
|
|
|

31.08.2008, 19:04
|
|
Познающий
Регистрация: 22.01.2007
Сообщений: 40
Провел на форуме: 179857
Репутация:
4
|
|
#include "stdafx.h"
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
float nomwet = 0, nachbal = 0, rashod = 0, prihod = 0, predel = 0, newbal = 0;
while (nomwet != -1)
{cout << "Vvedite nomer weta (ili -1): ";
cin >> nomwet;
cout << "Vvedite na4alniu balans: ";
cin >> nachbal;
cout << "Vvedite symmy rashodov: ";
cin >> rashod;
cout << "Vvedite symmy prihoda: ";
cin >> prihod;
cout << "Vvedite predel kredita: ";
cin >> predel;
cout << "HOMEP WETA: " << nomwet << endl;
newbal = nachbal + rashod - prihod;
cout << "Balans: " << newbal << endl;
if (newbal > predel)
cout << "PREDEL PREVUWEN!!!\n";}
return 0;
}
Почему после ввода -1 цыкл сразу не прерывается а требует ввода всех остальных данных и только тогда прерывается?
|
|
|

31.08.2008, 19:09
|
|
Познающий
Регистрация: 29.01.2008
Сообщений: 82
Провел на форуме: 373690
Репутация:
88
|
|
Всё правильно, цикл сразу должен дойти до конца, после чего ин проверит nomwet и если она равна -1 завершится.
Ппробуй что-нить в этом роде:
Код:
#include "stdafx.h"
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
float nomwet = 0, nachbal = 0, rashod = 0, prihod = 0, predel = 0, newbal = 0;
while (1)
{cout << "Vvedite nomer weta (ili -1): ";
cin >> nomwet;
if (nomwet==-1)
{
getchar();
return 0;
}
cout << "Vvedite na4alniu balans: ";
cin >> nachbal;
cout << "Vvedite symmy rashodov: ";
cin >> rashod;
cout << "Vvedite symmy prihoda: ";
cin >> prihod;
cout << "Vvedite predel kredita: ";
cin >> predel;
cout << "HOMEP WETA: " << nomwet << endl;
newbal = nachbal + rashod - prihod;
cout << "Balans: " << newbal << endl;
if (newbal > predel)
cout << "PREDEL PREVUWEN!!!\n";}
return 0;
}
Последний раз редактировалось Smapt; 31.08.2008 в 19:12..
|
|
|

31.08.2008, 19:10
|
|
Познающий
Регистрация: 22.01.2007
Сообщений: 40
Провел на форуме: 179857
Репутация:
4
|
|
как зделать чтобы при nomwet = -1 цыкл сразу завершился?
|
|
|

31.08.2008, 19:42
|
|
Новичок
Регистрация: 04.06.2008
Сообщений: 24
Провел на форуме: 55730
Репутация:
16
|
|
Код:
if (nomwet == -1) break;
|
|
|

01.09.2008, 00:53
|
|
Познающий
Регистрация: 22.01.2007
Сообщений: 40
Провел на форуме: 179857
Репутация:
4
|
|
Господа как сравнить десять введённый чисел? Только if? или можна по другому?
|
|
|

01.09.2008, 01:10
|
|
Участник форума
Регистрация: 30.08.2008
Сообщений: 128
Провел на форуме: 668329
Репутация:
106
|
|
Сообщение от 4y4o
Господа как сравнить десять введённый чисел? Только if? или можна по другому?
для чего сравнивать? в сортировке используется сравнение? Сортировки разные есть - по разному можно сравнивать 10 чисел - почти всегда только if используется, но иногда нет.
Например, вот алгоритм сортировки Шелла :
{на входе массив чисел a}
procedure sort;
var i,j,k,h,shag,t:integer;
begin
k:=0;
shag:=trunc( ln(n) / ln(2)-1); {vichislenie shaga metodom knuta}
for h:=shag downto 1 do
begin
k:=h;
for i:=k to n do
begin
t:=a[i];
j:=i-k;
while (j>0) and (t<a[j]) do
begin
a[j+k]:=a[j];
j:=j-k;
end;
a[j+k]:=t;
end;
end;
end;
Напиши, подробнее что нужно.
|
|
|

01.09.2008, 01:17
|
|
Познающий
Регистрация: 22.01.2007
Сообщений: 40
Провел на форуме: 179857
Репутация:
4
|
|
ох ты )) Извени. во первых С++, во вторых вводим десять чисел и нада определить большее из них.
Последний раз редактировалось 4y4o; 01.09.2008 в 01:24..
|
|
|

01.09.2008, 01:31
|
|
Познающий
Регистрация: 29.01.2008
Сообщений: 82
Провел на форуме: 373690
Репутация:
88
|
|
Сообщение от 4y4o
Господа как сравнить десять введённый чисел? Только if? или можна по другому?
_http://ru.wikibooks.org/wiki/Язык_Си_в_примерах/Сортировка
почтай, должно помочь)
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|