1. Функция перевода чисел (2) 2. Арифметические операции и функции различной сложности (4) 3. Функция нахождения количества максимальных эл. В массиве (1) 4. Вычисление чисел фибоначчи (2)
1. ФУНКЦИЯ ПЕРЕВОДА ЧИСЕЛ (2) 2. АРИФМЕТИЧЕСКИЕ ОПЕРАЦИИ И ФУНКЦИИ РАЗЛИЧНОЙ СЛОЖНОСТИ (4) 3. ФУНКЦИЯ НАХОЖДЕНИЯ КОЛИЧЕСТВА МАКСИМАЛЬНЫХ ЭЛ. В МАССИВЕ (1) 4. ВЫЧИСЛЕНИЕ ЧИСЕЛ ФИБОНАЧЧИ (2) 5. СОЗДАНИЕ ОТСОРТИРОВАННОГО МАССИВА ИЗ ДВУХ НЕ ОТСОРТИРОВАНЫХ (3) 6. ПРОГРАММА ДЛЯ ОТКРЫТИЯ ТЕКСТОВЫХ ФАЙЛОВ В С++ (1) 7. ЦИКЛИЧЕСКИЕ ВЫЧИСЛИТЕЛЬНЫЕ ПРОЦЕССЫ (ИЗ ИДЗ) (2) 8. СОРТИРОВКА "ПУЗЫРЬКОМ" (1) 9. ОДНОМЕРНЫЙ МАССИВ (ИЗ ИДЗ) (1) 10. МАТРИЦА ОБЫКНОВЕННАЯ (C ВЫВОДОМ НОМЕРОВ СТРОК С МАХ ЭЛЕМЕНТОМ) (1) 11. СОРТИРОВКА ОДНОМЕРНОГО МАССИВА (1) 12. ДЕМОНИЧЕСКАЯ МАТРИЦА С СОРТИРОВКОЙ (1) 12. ДЕМОНИЧЕСКАЯ МАТРИЦА (КЛАССИЧЕСКАЯ ОТ ВИНОГРАДОВОЙ) (1)
13. БАЗОВАЯ ПРОГРАММА ПОСТРОЕНИЯ ДЕРЕВА (1) 14. ПРОГРАММА НАХОЖДЕНИЯ СУММЫ ОТРИЦАТЕЛЬНЫХ ЭЛЕМЕНТОВ В УЗЛАХ, КОЛИЧЕСТВО ОТРИЦАТЕЛЬНЫХ, МАКСИМАЛЬНЫЙ ЭЛЕМЕНТ (1)
15. Построить идеально сбалансированное дерево. Напечатать. Определить высоту дерева. В скобках указано количество прог на заданную тему.
WolfClan
Дата: Среда, 22.04.2009, 09:21 | Сообщение # 2
Группа: Удаленные
ФУНКЦИЯ ПЕРЕВОДА ЧИСЕЛ Напишите функцию перевода р-ричного числа в десятичное.
Code
#include<conio.h> #include<stdio.h>
int ch[] = {2,5,4}; int sys = 16; int n = sizeof(ch)/sizeof(int); int i, j, rez = 0, sys_temp;
_____ Напишите функцию разложения натурального числа на простые множители
Code
# include <stdio.h>
void main() { const N=15120; long int n=N; int mas[10]; int kol=0; for (int i=2;i<=n;) { if ((n%i)==0) { mas[kol]=i; kol++; while ((n%i)==0) n/=i; } else i++; }
}
_____ Напишите функцию поиска количества максимальных элементов в массиве
Code
# include <stdio.h> # include <stdlib.h>
const n=10; int mas[n]; int max,kol;
int poisk(int a[]) { int k=1; max=a[0]; for (int i=0;i<n;i++) if (a[i]>max) { max=a[i]; k=1;} else if (a[i]==max) k++; return k; }
void main() { randomize(); for (int i=0;i<n;i++) mas[i]=5+random(10); kol=poisk(mas); }
_____ Найти все простые числа из интервала 2..N (N<=80000).
СОЗДАНИЕ ОТСОРТИРОВАННОГО МАССИВА ИЗ ДВУХ НЕ ОТСОРТИРОВАНЫХ
Даны два массива. Массив А состоит из N элементов и отсортирован по возрастанию. Массив В состоит из М элементов и отсортирован по убыванию. Разработать программу для слияния этих массивов в отсортированный по возрастанию массив С.
Code
# include <stdio.h> # include <stdlib.h>
const N=10,M=10; int a[N],b[M],c[N+M];
void main() { randomize(); a[0]=-20; b[0]= 20; for (int i=1;i<N;i++) a[i]=a[i-1]+random(10); for (i=1;i<M;i++) b[i]=b[i-1]-random(10); int x=0,y=M-1; i=0; while (!c[N+M-1]) { if (((a[x]>=b[y])|(x>N-1))&(y<=M-1)) { c[i]=b[y]; i++; y--; } else if (((a[x]<=b[y])|(y<0))&(x>=0)) { c[i]=a[x]; i++; x++; } } }
_____
Даны два массива. Массив А состоит из N элементов и отсортирован по возрастанию. Массив В состоит из М элементов и отсортирован по убыванию. Разработать программу для слияния этих массивов в отсортированный по убыванию массив С, не содержащий одинаковых элементов.
Code
# include <stdio.h> # include <stdlib.h>
const N=10,M=10; int a[N],b[M],c[N+M];
void main() { randomize(); a[0]=-5; b[0]= 5; for (int i=1;i<N;i++) a[i]=a[i-1]+random(3); for (i=1;i<M;i++) b[i]=b[i-1]-random(3); int x=N-1,y=0; i=0; while ((x>=0)|(y<M)) { if (((a[x]>=b[y])|(y>M-1))&(x>=0)) { if (c[i-1]!=a[x]) { c[i]=a[x]; i++;} x--; }
_____
Даны два массива. Массив А состоит из N элементов, массив В состоит из М элементов. Оба массива отсортированы по убыванию. Разработать программу для слияния этих массивов в отсортированный по неубыванию массив С.
int x=M-1,y=N-1; i=0; while ((x>=0)|(y>=0)) { if (((a[x]<=b[y])|(y<0))&(x>=0)) { c[i]=a[x]; i++; x--; } else if (((a[x]>=b[y])|(x<0))&(y>=0)) { c[i]=b[y]; i++; y--; } } }
WolfClan
Дата: Среда, 22.04.2009, 10:09 | Сообщение # 7
Группа: Удаленные
ПРОГРАММА ДЛЯ ОТКРЫТИЯ ТЕКСТОВЫХ ФАЙЛОВ В С++
Прога выводит содержимое из выбранного txt файла (вроде ничего не напутал)
Code
#include<stdio.h> #include<string.h>
main() { FILE*f= fopen("t.txt","r"); \\ процедура открывающая файл с именем t.txt, r означает чтение (изменять не будем) char s[100]; \\ выделяем в процедуре строку в 100 символов int k=0; while (!feof (f)){ \\ гм. проверяем, в какой строке количество символов не равно 0, (длинна строки не 0), fgets(s,100,f); if (strlen(s)==0) {\\ если 0 то к следущей k++;} ; } fclose(f); \\ закрываем файл printf("k=%i", k); \\ выводим строку с символами из файла printf("\n"); return 0; }
WolfClan
Дата: Среда, 22.04.2009, 10:25 | Сообщение # 8
Группа: Удаленные
ЦИКЛИЧЕСКИЕ ВЫЧИСЛИТЕЛЬНЫЕ ПРОЦЕССЫ (ИЗ ИДЗ)
Вычислить и вывести на экран в виде таблицы значения функции F на интервале от Хнач до Хкон с шагом dX. F = ax2 + b +c при a < 0 и с № 0 F = -a/(x-c) при a > 0 и c = 0 F = a(x+c) во всех остальных случаях, где a, b и c – действительные числа. Значения a, b, c, Хнач, Хкон, dX – ввести с клавиатуры.
Вычислить и вывести на экран в виде таблицы значения функции F на интервале от Хнач до Хкон с шагом dX. F = ax2 + b2x при a < 0 и x!= 0 F = x – a/(x - c) при a > 0 и x = 0 F = 1 + x/c во всех остальных случаях, где a, b и c – действительные числа. Значения a, b, c, Хнач, Хкон, dX – ввести с клавиатуры.*/
Code
#include <iostream.h> #include <conio.h>
void main() { clrscr(); float a,b,c,x,xH,xk,dx,F;
cout << "BBeDuTe 3Ha4eHu9l nepeMeHHbIx: a b c xH xk dx\n"; cin>>a>>b>>c>>xH>>xk>>dx; cout<<"\n"; cout<<"x\t"; cout<<"F\n";
for (x = xH; x <= xk; x += dx) { cout << x; cout << "\t";
if(a < 0 && x!= 0) { F = a * x * 2 + b * 2 * x; cout << F; cout << "\n"; } else if(a > 0 && x == 0) { if ((x - c) == 0) { cout << "XXX - Ha HyJlb DeJluTb HeJlb39|"; cout << "\n"; } else { F = x - a / (x - c); cout << F; cout << "\n"; } } else { if (c == 0) { cout << "XXX - Ha HyJlb DeJluTb HeJlb39|"; cout << "\n"; } else { F = 1 + x / c; cout << F; cout << "\n"; } } } getch(); }
WolfClan
Дата: Среда, 22.04.2009, 10:26 | Сообщение # 9
Группа: Удаленные
СОРТИРОВКА "ПУЗЫРЬКОМ"
Code
#include <conio.h> #include <iostream.h> #include <iomanip.h> const int n=10, k=15; void input (float w[ ], int p, int z) {cout<<"/n vvedite" <<p<< "element /n"; for (int i=0; i<p; i++) cin>>w[i]; if (w[i]>w[i+1]) {z=w[i];w[i]=w[i+1];w[i+1]=z;} } void output (float w[], int p, char title[]) {cout<<title; for (int i=0; i<p; i++) cout<<w[i]<<" "; cout<<endl; } getch ();
WolfClan
Дата: Среда, 22.04.2009, 10:27 | Сообщение # 10
Группа: Удаленные
ОДНОМЕРНЫЙ МАССИВ (ИЗ ИДЗ)
Задание - В одномерном массиве, состоящем из N вещественных элементов, вычислить: произведение элементов массива с четными номерами; сумму элементов массива, расположенных между первым и последним нулевыми элементами. Преобразовать массив таким образом, чтобы сначала располагались все положительные элементы, а потом – все отрицательные (элементы, равные нулю, считать положительными).
Прога -
Code
#include <conio.h> #include <iostream.h> #include <iomanip.h> const int n=10, k=15; void input (float w[ ], int p, int zfloat, proizv = 0) { {cout<<"/n vvedite" <<p<< "element /n"; for (int i=0; i<p; i++) cin>>w[i]; if (w[i]>w[i+1]) {z=w[i];w[i]=w[i+1];w[i+1]=z;} } for (i=0; i<p; i++) { if (a[i]%2==0) { if (proizv==0){proizv = 1; } proizv*=a[i]; } } if (proizv!=0) { cout<<"Proizvedenie chetnih chisel: "<<proizv<<endl; } else cout<<"Chetnih chisel net!"<<endl; for (int i=0; i<p; i++) for(i=0; i<m; i++) {int summ=0; if (a[i]==0) summ++; if (summ==0){summ = 1; summ+=a[i]; } if (summ!=0) { cout<<"Summa pervih i poslednih с 0: "<<proizv<<endl; } else cout<<"Net nulevih elementov!"<<endl; void output (float w[], int p, char title[]) {cout<<title; for (int i=0; i<p; i++) cout<<w[i]<<" "; cout<<endl; } getch ();
WolfClan
Дата: Среда, 22.04.2009, 10:29 | Сообщение # 11
Группа: Удаленные
МАТРИЦА ОБЫКНОВЕННАЯ (C ВЫВОДОМ НОМЕРОВ СТРОК С МАХ ЭЛЕМЕНТОМ)
Code
#include <iostream.h> #include <conio.h> #include <iomanip.h> const int n=5, m=6; void input(float w[n][m]) { cout<<"vv"<<n<<" stroka po "<<m<<" yl\n"; int i,j; for (i=0; i<n; i++) for (int j=0; j<m; j++) cin>>w[i][j]; }
_____ Напишите функцию разложения натурального числа на простые множители
Code
# include <stdio.h>
void main() { const N=15120; long int n=N; int mas[10]; int kol=0; for (int i=2;i<=n;) { if ((n%i)==0) { mas[kol]=i; kol++; while ((n%i)==0) n/=i; } else i++; }
}
_____ Напишите функцию поиска количества максимальных элементов в массиве
Code
# include <stdio.h> # include <stdlib.h>
const n=10; int mas[n]; int max,kol;
int poisk(int a[]) { int k=1; max=a[0]; for (int i=0;i<n;i++) if (a[i]>max) { max=a[i]; k=1;} else if (a[i]==max) k++; return k; }
void main() { randomize(); for (int i=0;i<n;i++) mas[i]=5+random(10); kol=poisk(mas); }
_____ Найти все простые числа из интервала 2..N (N<=80000).
СОЗДАНИЕ ОТСОРТИРОВАННОГО МАССИВА ИЗ ДВУХ НЕ ОТСОРТИРОВАНЫХ
Даны два массива. Массив А состоит из N элементов и отсортирован по возрастанию. Массив В состоит из М элементов и отсортирован по убыванию. Разработать программу для слияния этих массивов в отсортированный по возрастанию массив С.
Code
# include <stdio.h> # include <stdlib.h>
const N=10,M=10; int a[N],b[M],c[N+M];
void main() { randomize(); a[0]=-20; b[0]= 20; for (int i=1;i<N;i++) a[i]=a[i-1]+random(10); for (i=1;i<M;i++) b[i]=b[i-1]-random(10); int x=0,y=M-1; i=0; while (!c[N+M-1]) { if (((a[x]>=b[y])|(x>N-1))&(y<=M-1)) { c[i]=b[y]; i++; y--; } else if (((a[x]<=b[y])|(y<0))&(x>=0)) { c[i]=a[x]; i++; x++; } } }
_____
Даны два массива. Массив А состоит из N элементов и отсортирован по возрастанию. Массив В состоит из М элементов и отсортирован по убыванию. Разработать программу для слияния этих массивов в отсортированный по убыванию массив С, не содержащий одинаковых элементов.
Code
# include <stdio.h> # include <stdlib.h>
const N=10,M=10; int a[N],b[M],c[N+M];
void main() { randomize(); a[0]=-5; b[0]= 5; for (int i=1;i<N;i++) a[i]=a[i-1]+random(3); for (i=1;i<M;i++) b[i]=b[i-1]-random(3); int x=N-1,y=0; i=0; while ((x>=0)|(y<M)) { if (((a[x]>=b[y])|(y>M-1))&(x>=0)) { if (c[i-1]!=a[x]) { c[i]=a[x]; i++;} x--; }
_____
Даны два массива. Массив А состоит из N элементов, массив В состоит из М элементов. Оба массива отсортированы по убыванию. Разработать программу для слияния этих массивов в отсортированный по неубыванию массив С.
int x=M-1,y=N-1; i=0; while ((x>=0)|(y>=0)) { if (((a[x]<=b[y])|(y<0))&(x>=0)) { c[i]=a[x]; i++; x--; } else if (((a[x]>=b[y])|(x<0))&(y>=0)) { c[i]=b[y]; i++; y--; } } }
WolfClan
Дата: Среда, 22.04.2009, 10:09 | Сообщение # 7
Группа: Удаленные
ПРОГРАММА ДЛЯ ОТКРЫТИЯ ТЕКСТОВЫХ ФАЙЛОВ В С++
Прога выводит содержимое из выбранного txt файла (вроде ничего не напутал)
Code
#include<stdio.h> #include<string.h>
main() { FILE*f= fopen("t.txt","r"); \\ процедура открывающая файл с именем t.txt, r означает чтение (изменять не будем) char s[100]; \\ выделяем в процедуре строку в 100 символов int k=0; while (!feof (f)){ \\ гм. проверяем, в какой строке количество символов не равно 0, (длинна строки не 0), fgets(s,100,f); if (strlen(s)==0) {\\ если 0 то к следущей k++;} ; } fclose(f); \\ закрываем файл printf("k=%i", k); \\ выводим строку с символами из файла printf("\n"); return 0; }
WolfClan
Дата: Среда, 22.04.2009, 10:25 | Сообщение # 8
Группа: Удаленные
ЦИКЛИЧЕСКИЕ ВЫЧИСЛИТЕЛЬНЫЕ ПРОЦЕССЫ (ИЗ ИДЗ)
Вычислить и вывести на экран в виде таблицы значения функции F на интервале от Хнач до Хкон с шагом dX. F = ax2 + b +c при a < 0 и с № 0 F = -a/(x-c) при a > 0 и c = 0 F = a(x+c) во всех остальных случаях, где a, b и c – действительные числа. Значения a, b, c, Хнач, Хкон, dX – ввести с клавиатуры.
Вычислить и вывести на экран в виде таблицы значения функции F на интервале от Хнач до Хкон с шагом dX. F = ax2 + b2x при a < 0 и x!= 0 F = x – a/(x - c) при a > 0 и x = 0 F = 1 + x/c во всех остальных случаях, где a, b и c – действительные числа. Значения a, b, c, Хнач, Хкон, dX – ввести с клавиатуры.*/
Code
#include <iostream.h> #include <conio.h>
void main() { clrscr(); float a,b,c,x,xH,xk,dx,F;
cout << "BBeDuTe 3Ha4eHu9l nepeMeHHbIx: a b c xH xk dx\n"; cin>>a>>b>>c>>xH>>xk>>dx; cout<<"\n"; cout<<"x\t"; cout<<"F\n";
for (x = xH; x <= xk; x += dx) { cout << x; cout << "\t";
if(a < 0 && x!= 0) { F = a * x * 2 + b * 2 * x; cout << F; cout << "\n"; } else if(a > 0 && x == 0) { if ((x - c) == 0) { cout << "XXX - Ha HyJlb DeJluTb HeJlb39|"; cout << "\n"; } else { F = x - a / (x - c); cout << F; cout << "\n"; } } else { if (c == 0) { cout << "XXX - Ha HyJlb DeJluTb HeJlb39|"; cout << "\n"; } else { F = 1 + x / c; cout << F; cout << "\n"; } } } getch(); }