Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
щпора проги.docx
Скачиваний:
4
Добавлен:
20.09.2019
Размер:
37.97 Кб
Скачать

Void pr ( int *p, int n){

int i;

char gl[5] = { 'A', 'E', 'I', 'O', 'U'};

for( i = 1; i <= n; i++)

printf("%c", gl[p[i]-1]);

printf("\n");

}

Int main(){

int i, k, n = 5, temp;

int p[6];

for(i = 1; i <= n; i++)

p[i] = i;

k = 0;

while ( k != 1 ){

pr(p, n);

k = n;

temp = p[1];

for( i = 1; i < k; i++)

p[i] = p[i+1];

p[k] = temp;

while ( p[k] == k && k != 1 ){

k--;

temp = p[1];

for( i = 1; i < k; i++)

p[i] = p[i+1];

p[k] = temp;

}

}

scanf("%d", &k);

}

//Программа 8. Программа 11.

//Перестановки 1-5, неубывание\невозрастание суммы инверсией.

#include "stdafx.h"

#include "stdio.h"

#include "string.h"

char viv[11][300];

Void pr ( int *p, int n){

int i,j, inv = 0;

char buf[100] = {'\0'}, temp[100]= {'\0'};

for( i = 0; i < n; i++){

sprintf(temp, "%d", p[i]);

strcat(buf, temp);

for( j = 0; j < i; j++)

if( p[j] > p[i] )

inv++;

}

sprintf(temp, "\t Inv = %d\n", inv);

strcat(buf, temp);

strcat( viv[inv], buf);

}

Int main(){

int i, j, k, n = 5, kol_sp;

int p[5], d[5], spis[5];

for(i = 0; i < n; i++)

p[i] = spis[i] = i+1;

pr(p, n);

for( i = 1; i < 120; i++){ d[4] = i / 24;

d[3] = (i - d[4]*24) / 6;

d[2] = (i - d[4]*24 - d[3]*6) / 2;

d[1] = i - d[4]*24 - d[3]*6 - d[2]*2;

d[0] = 0;

for( j = 0; j < n; j++)

spis[j] = n - j;

kol_sp = n;

for( k = n-1; k >= 0; k--){ p[k] = spis[d[k]];

kol_sp--;

for( j = d[k]; j < kol_sp; j++)

spis[j] = spis[j+1];

}

pr(p, n);

}

for( i = 0; i <= 10 ; i++)

printf("%s", viv[i]);

}

//Программа 9.

// 11^n

#include "stdafx.h"

#include <iostream>

#include <stdlib.h>

#include <stdio.h>

#include <math.h>

#define OSN 11

using namespace std;

unsigned int cmn ( int m, int n );

int binom ( int n );

int m_pow ( int a, int b );

int m_pow ( int a, int b )

{ if ( b == 0 )

return 1;

if ( b == 1 )

return a;

else

return a * m_pow ( a, b - 1 );

}

Int main()

{ int n = 0;

cout << "Vvodi" << endl;

cin >> n;

cout << binom ( n ) << endl;

system("PAUSE");

return 0;

}

unsigned int cmn ( int m, int n )

{ int c = 0;

if( m > n )

return 0;

if( m == n || !m)

return 1;

return cmn(m, n-1) + cmn(m-1, n-1);

}

int binom ( int n )

{

int i;

unsigned int total = 0;

for ( i = 0; i <= n; ++i ){

total += cmn ( i, n ) * m_pow( 10, i );

}

return total;

}

//Программа 10

//Гинденбург

#include "stdafx.h"

#include "stdio.h"

void pr ( int *p, int l){

int i;

if( l == 3 || l == 4){

for( i = 0; i <= l; i++){

printf(" %d ", p[i]);

}

printf("\n");

}

}

Int main(){

int p[12] = {12,0,0,0,0,0,0,0,0,0,0,0};

int i, j, l = 0, fl, temp;

pr(p,l);

while(1){

fl = 0;

for( i = l; i >= 0; i--)

if( p[l] - p[i] >= 2 ){

fl = 1;

break;

}

if( fl ){

temp = p[i]+1;

for( j = i; j < l; j++)

p[j] = temp;

}

else{

for(j = 0; j <= l; j++)

p[j] = 1;

l++;

}

p[l] = 12;

for( j = 0; j < l; j++ )

p[l] -= p[j];

pr(p, l);

if( l == 11)

break;

}

scanf("%d", &l);

}

//Программа 12. 14

//Ладьи

//#include "stdafx.h"

#include "stdio.h"

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]