Deutsch
Germany.ruФорумы → Архив Досок→ Программирование

programm

143  
Saia-- местный житель06.03.07 15:26
Saia--
NEW 06.03.07 15:26 
#include <stdio.h>
void print_ip_addr(unsigned int ip_addr)
{
unsigned int i1,i2,i3,i4;
i1=ip_addr/(256*256*256);
i2=ip_addr/(256*256)-i1*256;
i3=ip_addr/256-i1*256*256-i2*256;
i4=ip_addr%256;
printf("%i.%i.%i.%i\n",i1,i2,i3,i4);
}
void main(void)
{
int ipnum;
scanf("%i",&ipnum);
print_ip_addr(ipnum);
}
кто может подсказать как ето считать?
если ввести 1
260
65540
16909060
#1 
  scorpi_ скептик06.03.07 15:35
NEW 06.03.07 15:35 
в ответ Saia-- 06.03.07 15:26
В чём заключается вопрос-то? Если в пересчёте ip в строку, то - http://linux.about.com/library/cmd/blcmdl3_inet_ntoa.htm
#2 
Saia-- местный житель06.03.07 15:39
Saia--
NEW 06.03.07 15:39 
в ответ scorpi_ 06.03.07 15:35
вопрос заключается в том что
если ввести
1,260,65540,16909060
что программа выведит??
Я не знаю как ето считать
#3 
Tomasson знакомое лицо06.03.07 16:10
Tomasson
NEW 06.03.07 16:10 
в ответ Saia-- 06.03.07 15:39
В ответ на:
что программа выведит??

если int разделить на int, то что получается?
5 / 3 = ?
что значит знак %?
5 % 3 = ?
программа начинается с какой функции?
#4 
  scorpi_ скептик06.03.07 16:10
06.03.07 16:10 
в ответ Saia-- 06.03.07 15:39
Это можно было и попроще написать -
В ответ на:
void print_ip_addr( unsigned int ip_addr )
{
unsigned char i1, i2, i3, i4;
i1 = ip_addr >> 24;
i2 = ip_addr >> 16;
i3 = ip_addr >> 8;
i4 = ip_addr;
printf( "%i.%i.%i.%i\n", i1, i2, i3, i4 );
}


Как считать? Представляешь число в двоичном виде, и сдвигаешь его вправо на 24, 16, 8, 0 битов. Берёшь низшие 8 битов.
#5 
Simple Nothing is f*cked06.03.07 17:19
Simple
NEW 06.03.07 17:19 
в ответ Tomasson 06.03.07 16:10
RTFM :-D
% - деление по модулю.
#6 
  Chipolino местный житель06.03.07 17:22
NEW 06.03.07 17:22 
в ответ Tomasson 06.03.07 16:10
В ответ на:

что значит знак %?
5 % 3 = ?

5%3=2
А теперь догадайся что же он означает ;-)
#7 
  Chipolino местный житель06.03.07 17:24
NEW 06.03.07 17:24 
в ответ Tomasson 06.03.07 16:10
В ответ на:

программа начинается с какой функции?

Как и все c-программы с функции main
#8 
Simple Nothing is f*cked06.03.07 17:26
Simple
NEW 06.03.07 17:26 
в ответ Chipolino 06.03.07 17:24
Не все ;)
#9 
  digital.pilot старожил06.03.07 17:33
digital.pilot
NEW 06.03.07 17:33 
в ответ Simple 06.03.07 17:19
да че вы его эртээфэмить сразу. Он же просто девачге наводящие вопросы задавал.
#10 
  Chipolino местный житель06.03.07 17:46
NEW 06.03.07 17:46 
в ответ Simple 06.03.07 17:26
В ответ на:

Не все ;)

Так и знал , что кто-нибудь придерется :-)
#11 
Simple Nothing is f*cked06.03.07 17:51
Simple
NEW 06.03.07 17:51 
в ответ digital.pilot 06.03.07 17:33
А нефиг!.. :-D
scorpi_ меня настораживает своей добротой :-D
#12 
Tomasson знакомое лицо06.03.07 18:24
Tomasson
NEW 06.03.07 18:24 
в ответ Simple 06.03.07 17:51
В ответ на:
scorpi_ меня настораживает своей добротой

:-) *вопросы по с++ задавать только в женском обличии.*
#13 
Tomasson знакомое лицо06.03.07 18:25
Tomasson
NEW 06.03.07 18:25 
в ответ Tomasson 06.03.07 18:24
и по С тоже:-)
#14 
  scorpi_ скептик07.03.07 01:20
NEW 07.03.07 01:20 
в ответ Tomasson 06.03.07 18:24
Что за грязные инсинуации? (с) Я вчера evgher'у отвечал.
#15