Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Π―Π·Ρ‹ΠΊ Π‘ΠΈ - руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…Β». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 55

Автор M. УЭИВ

     ΠœΠΎΠΆΠ½ΠΎ Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΏΡƒΡ‚Π΅ΠΌ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π² Π½Π΅Π΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… стСпСнСй ΠΈ использования чисСл с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ для прСдставлСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… base ΠΈ answer. Π’ любом случаС ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ стСпСни Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ‹Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ Ρ†Π΅Π»Ρ‹ΠΌ числом, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ это число выполняСмых ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠΉ; нСльзя произвСсти 2,31 умноТСния.

/* Π²ΠΎΠ·Π²ΠΎΠ΄ΠΈΡ‚ основаниС Π² ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ*/

double powΠ΅r(base, Π΅xp)

double, base;

int exp;

{

 double answer;

if(exp > 0)

{

for(answer = 1.0; exp >        0; exp --) answer * = base;

return(answer);

}

 else if(base != 0)

{

 for(answer = 1.0; exp        < 0; exp++ ) answer /= base;

return(answer);

}

 else /* base = 0 ΠΈΠ΅xp <= 0 */

{

 printf(" НСльзя Π²ΠΎΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ 0 Π² %d стeпСнь!\n", exp);

return(0);

 }

}

     ΠΠ΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ здСсь нСсколько ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΠ².

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ: самым Π³Π»Π°Π²Π½Ρ‹ΠΌ являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ‚ΠΈΠΏ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ! ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ answer ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ double, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, сама функция power() Ρ‚ΠΎΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Ρ‚ΠΈΠΏΠ° double, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π΅ΠΉ присваиваСтся Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Π°, возвращаСмая ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ return. ΠŸΠΎΡ‡Π΅ΠΌΡƒ, спроситС Π²Ρ‹, ΠΌΡ‹ Π½Π΅ описывали Ρ‚ΠΈΠΏ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ€Π°Π½ΡŒΡˆΠ΅? Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π² языкС Π‘ΠΈ функция ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ int (для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ это Ρ‚Π°ΠΊ), Ссли Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ΠΎ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΈΠ½ΠΎΠ΅.

Π’Ρ‚ΠΎΡ€ΠΎΠΉ: ΠΌΡ‹ Ρ…ΠΎΡ‚Π΅Π»ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π½Π΅ Π·Π°Π±Ρ‹Π»ΠΈ Ρ‚Π΅ Π½ΠΎΠ²Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ присваивания, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Π²Π΅Π»ΠΈ Π² Π³Π». 8.

Π’Ρ€Π΅Ρ‚ΠΈΠΉ: Π² соотвСтствии с алгСбраичСскими ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌΠΈ Π²ΠΎΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ Π±Ρ‹Π»ΠΎ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΎ Π² Π΄Π΅Π»Π΅Π½ΠΈΠ΅. Π­Ρ‚ΠΎ внСсло ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ дСлСния Π½Π° Π½ΡƒΠ»ΡŒ, Π½ΠΎ Π² Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΌΡ‹ прСдусмотрСли Π²Ρ‹Π΄Π°Ρ‡Ρƒ сообщСния ΠΎΠ± ошибкС ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ значСния 0, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π΅ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‰Π°Π»Π°ΡΡŒ.

     ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ‚Π΅ΠΌ ΠΆΠ΅ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠΌ ΠΏΡ€ΠΈ условии, Ρ‡Ρ‚ΠΎ Ρ‚ΠΈΠΏ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ power( ) Ρ‚Π°ΠΌ Ρ‚ΠΎΠΆΠ΅ описан.

/* ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° возвСдСния Π² ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ*/

main( )

{

double x;

double power( ); /* это ΠΏΡ€ΠΈΠΌΠ΅Ρ€ oписания  Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ */

x = power(2.0, 3);

printf(" %.0f \n", x);x = power(-3.0, 3);

printf(" %.0f\n" , x);x = power(4.0, -2);

printf(" %.4f\n", x);x = power(5.0, 10);

print f ("%.0f \n", x);

}

На этот Ρ€Π°Π· Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ выглядят Π²ΠΏΠΎΠ»Π½Π΅ ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ.

8

-27

0.0625

9765625

Π”Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠΎΠ±ΡƒΠΆΠ΄Π°Π΅Ρ‚ нас ввСсти ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΉ Ρ€Π°Π·Π΄Π΅Π».

ΠžΠŸΠ˜Π‘ΠΠΠ˜Π• Π’Π˜ΠŸΠžΠ’ Π€Π£ΠΠšΠ¦Π˜Π™

     Π’ΠΈΠΏ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ опрСдСляСтся Ρ‚ΠΈΠΏΠΎΠΌ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ Сю значСния, Π° Π½Π΅ Ρ‚ΠΈΠΏΠΎΠΌ Π΅Π΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ². Если ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠ° отсутствуСт, Ρ‚ΠΎ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ считаСтся, Ρ‡Ρ‚ΠΎ функция ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ int. Если значСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½Π΅ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‚ Ρ‚ΠΈΠΏΡƒ int, Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π΅Π΅ Ρ‚ΠΈΠΏ Π² Π΄Π²ΡƒΡ… мСстах.

1. ΠžΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ‚ΠΈΠΏ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² Π΅Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ:

char pun(ch, n) /* функция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ символ */

int n;

char ch; 

float raft(num) /* функция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρƒ Ρ‚ΠΈΠΏΠ° float */

int num;

2. ΠžΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ‚ΠΈΠΏ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ‚Π°ΠΊΠΆΠ΅ Π² Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅. ОписаниС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΎ наряду с описаниями ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹; Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ скобки (Π½ΠΎ Π½Π΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹) для ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΊΠ°ΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

main( )

{

char rch, pun( );

float raft;

}

     Π—Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅! Если функция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρƒ Π½Π΅ Ρ‚ΠΈΠΏΠ° int, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΠΉΡ‚Π΅ Ρ‚ΠΈΠΏ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ‚Π°ΠΌ, Π³Π΄Π΅ ΠΎΠ½Π° опрСдСляСтся, ΠΈ Ρ‚Π°ΠΌ, Π³Π΄Π΅ ΠΎΠ½Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ.

РСзюмС: Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

1. Π€ΠΎΡ€ΠΌΠ° записи

Π’ΠΈΠΏΠΈΡ‡Π½ΠΎΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π²ΠΈΠ΄:

имя (список Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²)

описаниС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²

Ρ‚Π΅Π»ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

НаличиС списка Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΈ описаний Π½Π΅ являСтся ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ. ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΎΡ‚ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ‚Π΅Π»Π°, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ„ΠΈΠ³ΡƒΡ€Π½Ρ‹Π΅ скобки.


ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

diff(x, Ρƒ)                 /* имя Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ список Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² */

ini x, Ρƒ;                 /* описаниС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² */

{                        /* Π½Π°Ρ‡Π°Π»ΠΎ Ρ‚Π΅Π»Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ */

int z;                /* описаниС локальной ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ */

z = Ρ… - Ρƒ;return(z);

}                       /* ΠΊΠΎΠ½Π΅Ρ† Ρ‚Π΅Π»Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ */

II. ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

АргумСнты ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈΠ· Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ. Если значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π° ΠΈ b Π±ΡƒΠ΄ΡƒΡ‚ 5 ΠΈ 2, Ρ‚ΠΎ ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅

с = diff(а,b);

осущСствляСтся ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° этих Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ Ρ… ΠΈ Ρƒ. ЗначСния 5 ΠΈ 2 Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ ся фактичСскими Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ, Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ… ΠΈ Ρƒ, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ Π² описании Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ: diff( ) - Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ.

     Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова return позволяСт ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Π² Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΎΠ΄Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ· Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π’ нашСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ с присваиваСтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ z, Ρ€Π°Π²Π½ΠΎΠ΅ 3.

     ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½Π΅ ΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ влияния Π½Π° значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ нСпосрСдствСнно ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ². Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌ Π² случаС, Ссли Π² Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ трСбуСтся ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅ΠΌ ΠΎΠ΄Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.


III. Π’ΠΈΠΏ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ‚ΠΎΡ‚ ΠΆΠ΅ Ρ‚ΠΈΠΏ, Ρ‡Ρ‚ΠΎ ΠΈ значСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ Π² качСствС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ². По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ прСдполагаСтся, Ρ‡Ρ‚ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‚ΠΈΠΏ int. Если функция ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ‚ΠΈΠΏ, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Π½ ΠΈ Π² Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅, ΠΈ Π² самом ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.


ΠŸΡ€ΠΈΠΌΠ΅Ρ€

main( )

{

float q, x, duff( ); /* описаниС Π² Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ */

int n;

...

q = duff(Ρ…, n);

...

}

float duff(u, k); /* описаниС Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ */

float u;

int k;

{

float tor;

...

return(tor); /* Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠ° float */

} 

Π’ Π―Π—Π«ΠšΠ• БИ Π’Π‘Π• ЀУНКЦИИ Π ΠΠ’ΠΠžΠŸΠ ΠΠ’ΠΠ«

     Π’сС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅, написанной Π½Π° языкС Π‘ΠΈ, Ρ€Π°Π²Π½ΠΎΠΏΡ€Π°Π²Π½Ρ‹: каТдая ΠΈΠ· Π½ΠΈΡ… ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ Π»ΡŽΠ±ΡƒΡŽ Π΄Ρ€ΡƒΠ³ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΈ Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ каТдая ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π·Π²Π°Π½Π° любой Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ. Π­Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ языка Π‘ΠΈ нСсколько ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΎΡ‚ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ Паскаля, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Π² ПаскалС ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½Ρ‹ Π² Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ (ΠΏΡ€ΠΈΡ‡Π΅ΠΌ, ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹, содСрТащиСся Π² ΠΎΠ΄Π½ΠΎΠΌ Π³Π½Π΅Π·Π΄Π΅, ΡΠ²Π»ΡΡŽΡ‚ΡΡ нСдоступными для ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€, располоТСнных Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ).

     ΠΠ΅Ρ‚ Π»ΠΈ Ρƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ main( ) ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ спСцифики? БСзусловно, Π΅ΡΡ‚ΡŒ; ΠΎΠ½Π° Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ послС "сборки" ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, состоящСй ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Π΅Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ начинаСтся с ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ main( ). Но этим Π΅Π΅ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ граничиваСтся. Π”Π°ΠΆΠ΅ функция main( ) ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π·Π²Π°Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ функциями, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Π½ΠΈΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

/* Π²Ρ‹Π·ΠΎΠ²Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ main( ) */

#include      

main( )

{

char ch;

printf (" Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ символ. Q - ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ ΠΊΠΎΠ½Ρ†Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹. \n");

ch = getchar( );

printf ("Π’Π°ΠΊ! Π’Ρ‹ ΡƒΠΊΠ°Π·Π°Π»ΠΈ %с!\n", ch);

if(ch != 'Q') more( );

}

more( );

{

main( );

}

Ѐункция main( ) Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ more(), Π° функция more() Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ main()! ПослС Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ main( ) Π΅Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ начинаСтся с самого Π½Π°Ρ‡Π°Π»Π°; ΠΌΡ‹ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π»ΠΈ Ρ†ΠΈΠΊΠ» с Π²Π·Π°ΠΈΠΌΠ½Ρ‹ΠΌ Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ.

     Π€ΡƒΠ½ΠΊΡ†ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π°ΠΆΠ΅ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ сама сСбя. Упростим ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

/* main.main */

#include

main( )

{

char ch;

printf (" Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ символ. Q - ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ ΠΊΠΎΠ½Ρ†Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹.\n");

ch = getchar( );

printf ("Π’Π°ΠΊ! Π’Ρ‹ ΡƒΠΊΠ°Π·Π°Π»ΠΈ %с!\n", ch);

if(ch != 'Q') main( );

}

     ΠΠΈΠΆΠ΅ приводятся Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³ΠΎΠ½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ‚ΠΎ, ΠΊΠ°ΠΊ обрабатываСтся символ "новая строка", ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ пСрСдаСтся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ клавиши [Π²Π²ΠΎΠ΄].

Π’Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ символ. Q - ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ ΠΊΠΎΠ½Ρ†Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹.

I

Π’Π°ΠΊ! Π’Ρ‹ ΡƒΠΊΠ°Π·Π°Π»ΠΈ I !

Π’Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ символ. Q - ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ ΠΊΠΎΠ½Ρ†Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹.