#!/usr/bin/env perl6 sub ip2Int(@ip) { my Int $ipint = 0; for ^4 { $ipint +<= 8; $ipint +|= @ip[$_]; } $ipint; } sub int2Ip($ipint) { my @ip; @ip.push: ($ipint +> (8 * .Int)) +& 0xff for ^4; @ip.reverse; } say int2Ip($_) for ip2Int([1, 0, 16, 0]) ... ip2Int([1, 0, 17, 2]);
Standard input is empty
1 0 16 0 1 0 16 1 1 0 16 2 1 0 16 3 1 0 16 4 1 0 16 5 1 0 16 6 1 0 16 7 1 0 16 8 1 0 16 9 1 0 16 10 1 0 16 11 1 0 16 12 1 0 16 13 1 0 16 14 1 0 16 15 1 0 16 16 1 0 16 17 1 0 16 18 1 0 16 19 1 0 16 20 1 0 16 21 1 0 16 22 1 0 16 23 1 0 16 24 1 0 16 25 1 0 16 26 1 0 16 27 1 0 16 28 1 0 16 29 1 0 16 30 1 0 16 31 1 0 16 32 1 0 16 33 1 0 16 34 1 0 16 35 1 0 16 36 1 0 16 37 1 0 16 38 1 0 16 39 1 0 16 40 1 0 16 41 1 0 16 42 1 0 16 43 1 0 16 44 1 0 16 45 1 0 16 46 1 0 16 47 1 0 16 48 1 0 16 49 1 0 16 50 1 0 16 51 1 0 16 52 1 0 16 53 1 0 16 54 1 0 16 55 1 0 16 56 1 0 16 57 1 0 16 58 1 0 16 59 1 0 16 60 1 0 16 61 1 0 16 62 1 0 16 63 1 0 16 64 1 0 16 65 1 0 16 66 1 0 16 67 1 0 16 68 1 0 16 69 1 0 16 70 1 0 16 71 1 0 16 72 1 0 16 73 1 0 16 74 1 0 16 75 1 0 16 76 1 0 16 77 1 0 16 78 1 0 16 79 1 0 16 80 1 0 16 81 1 0 16 82 1 0 16 83 1 0 16 84 1 0 16 85 1 0 16 86 1 0 16 87 1 0 16 88 1 0 16 89 1 0 16 90 1 0 16 91 1 0 16 92 1 0 16 93 1 0 16 94 1 0 16 95 1 0 16 96 1 0 16 97 1 0 16 98 1 0 16 99 1 0 16 100 1 0 16 101 1 0 16 102 1 0 16 103 1 0 16 104 1 0 16 105 1 0 16 106 1 0 16 107 1 0 16 108 1 0 16 109 1 0 16 110 1 0 16 111 1 0 16 112 1 0 16 113 1 0 16 114 1 0 16 115 1 0 16 116 1 0 16 117 1 0 16 118 1 0 16 119 1 0 16 120 1 0 16 121 1 0 16 122 1 0 16 123 1 0 16 124 1 0 16 125 1 0 16 126 1 0 16 127 1 0 16 128 1 0 16 129 1 0 16 130 1 0 16 131 1 0 16 132 1 0 16 133 1 0 16 134 1 0 16 135 1 0 16 136 1 0 16 137 1 0 16 138 1 0 16 139 1 0 16 140 1 0 16 141 1 0 16 142 1 0 16 143 1 0 16 144 1 0 16 145 1 0 16 146 1 0 16 147 1 0 16 148 1 0 16 149 1 0 16 150 1 0 16 151 1 0 16 152 1 0 16 153 1 0 16 154 1 0 16 155 1 0 16 156 1 0 16 157 1 0 16 158 1 0 16 159 1 0 16 160 1 0 16 161 1 0 16 162 1 0 16 163 1 0 16 164 1 0 16 165 1 0 16 166 1 0 16 167 1 0 16 168 1 0 16 169 1 0 16 170 1 0 16 171 1 0 16 172 1 0 16 173 1 0 16 174 1 0 16 175 1 0 16 176 1 0 16 177 1 0 16 178 1 0 16 179 1 0 16 180 1 0 16 181 1 0 16 182 1 0 16 183 1 0 16 184 1 0 16 185 1 0 16 186 1 0 16 187 1 0 16 188 1 0 16 189 1 0 16 190 1 0 16 191 1 0 16 192 1 0 16 193 1 0 16 194 1 0 16 195 1 0 16 196 1 0 16 197 1 0 16 198 1 0 16 199 1 0 16 200 1 0 16 201 1 0 16 202 1 0 16 203 1 0 16 204 1 0 16 205 1 0 16 206 1 0 16 207 1 0 16 208 1 0 16 209 1 0 16 210 1 0 16 211 1 0 16 212 1 0 16 213 1 0 16 214 1 0 16 215 1 0 16 216 1 0 16 217 1 0 16 218 1 0 16 219 1 0 16 220 1 0 16 221 1 0 16 222 1 0 16 223 1 0 16 224 1 0 16 225 1 0 16 226 1 0 16 227 1 0 16 228 1 0 16 229 1 0 16 230 1 0 16 231 1 0 16 232 1 0 16 233 1 0 16 234 1 0 16 235 1 0 16 236 1 0 16 237 1 0 16 238 1 0 16 239 1 0 16 240 1 0 16 241 1 0 16 242 1 0 16 243 1 0 16 244 1 0 16 245 1 0 16 246 1 0 16 247 1 0 16 248 1 0 16 249 1 0 16 250 1 0 16 251 1 0 16 252 1 0 16 253 1 0 16 254 1 0 16 255 1 0 17 0 1 0 17 1 1 0 17 2