найти ошибку в коде, не правильно ищет максимальное число int main()
{
srand(time(NULL));
int i,min,max,n,m;
int a[10];
printf("массив\n");
for (int i=0; i < 10; i++)
{
a[i]=-15+(rand()%26);
printf("%d ", a[i]);
}
min=11;
n=m=-1;
max=-11;
for (i=0;i<10;i++)
{ if(a[i]>max);
{max=a[i];
n=i;}
if(a[i] {min=a[i];
m=i;};
}
printf("\na[max]: %d,%d",max,n);
printf("\na[min]: %d,%d",min,m);
}
// Внимание! Если программа не работает, обновите версию!
function IsPrime(Self:integer):boolean; extensionmethod;
// является ли число n простым
begin
if Self<4 then Result:=True
else begin
var found:=(Self mod 2=0);
var p:=3;
while (not found) and (sqr(p)<=Self) do
begin found:=(Self mod p=0); p+=2 end;
Result:=not found
end
end;
function SumDig(Self:integer):integer; extensionmethod;
// возвращает сумму цифр числа n
begin
var n:=Self;
Result:=0;
while n>0 do begin
Result+=n mod 10;
n:=n div 10
end
end;
begin
100.To(999).Where(t->t.SumDig.IsPrime).Println
end.
Результат
100 101 102 104 106 110 111 113 115 119 120 122 124 128 131 133 137 139 140 142 146 148 151 155 157 160 164 166 173 175 179 182 184 188 191 193 197 199 200 201 203 205 209 210 212 214 218 221 223 227 229 230 232 236 238 241 245 247 250 254 256 263 265 269 272 274 278 281 283 287 289 290 292 296 298 300 302 304 308 311 313 317 319 320 322 326 328 331 335 337 340 344 346 353 355 359 362 364 368 371 373 377 379 380 382 386 388 391 395 397 401 403 407 409 410 412 416 418 421 425 427 430 434 436 443 445 449 452 454 458 461 463 467 469 470 472 476 478 481 485 487 490 494 496 500 502 506 508 511 515 517 520 524 526 533 535 539 542 544 548 551 553 557 559 560 562 566 568 571 575 577 580 584 586 593 595 599 601 605 607 610 614 616 623 625 629 632 634 638 641 643 647 649 650 652 656 658 661 665 667 670 674 676 683 685 689 692 694 698 700 704 706 713 715 719 722 724 728 731 733 737 739 740 742 746 748 751 755 757 760 764 766 773 775 779 782 784 788 791 793 797 803 805 809 812 814 818 821 823 827 829 830 832 836 838 841 845 847 850 854 856 863 865 869 872 874 878 881 883 887 890 892 896 902 904 908 911 913 917 919 920 922 926 928 931 935 937 940 944 946 953 955 959 962 964 968 971 973 977 980 982 986 991 995
Кодирование заключается в том, что каждому символу ставится в соответствие уникальный десятичный код от 0 до 255 или соответствующий ему двоичный код от 00000000 до 11111111. Таким образом, человек различает символы по их начертанию, а компьютер - по их коду.
Удобство побайтового кодирования символов очевидно, поскольку байт - наименьшая адресуемая часть памяти и, следовательно, процессор может обратиться к каждому символу отдельно, выполняя обработку текста. С другой стороны, 256 символов – это вполне достаточное количество для представления самой разнообразной символьной информации.
Теперь возникает вопрос, какой именно восьмиразрядный двоичный код поставить в соответствие каждому символу.
Понятно, что это дело условное, можно придумать множество кодировки.
Все символы компьютерного алфавита пронумерованы от 0 до 255. Каждому номеру соответствует восьмиразрядный двоичный код от 00000000 до 11111111. Этот код просто порядковый номер символа в двоичной системе счисления.