- •Задание
- •Содержание
- •1 Локальная вычислительная сеть кафедры апп
- •2 Индивидуальное задание
- •2.2 Вычисление выражения
- •2.3 Вычисление выражения
- •2.4 Вычисление количества слов
- •2.5 Подсчёт количества єлементов
- •2.6 Печать таблицы истинности.
- •2.9 Нахождение нужного числа
- •2.10 Нахождение локального минимума
- •2.12 Печать натурального числа n
- •Перечень ссылок
2.9 Нахождение нужного числа
Программа предназначена для нахождения двузначного числа, сумма цифр которого не меняется при умножении числа на 2, 3, 4, 5, 6, 7, 8, 9.
Входные данные: натуральное число N
Выходные данные: числа удовлетворяющие условию задачи
Листиг задачи 2.9
#include "stdafx.h"
#include <stdio.h>
int main()
{
int i,first,second,a;
int j;
for(i=10;i<100;i++)
{
first=i/10;
second=i%10;
a=(first*10)+second;
for(j=2;j<10;j++)
{
if (i==(first+second)*j)
{ printf("%d",i);
printf("\n");
getchar();
//getchar();
}
}
}
getchar();
getchar();
}
Рисунок 2.2 Блок-схема предназначенная для алгоритма решения задачи № 2.10
fitst
=i/10; second
= i%10; a=(first*10)+second;
Печать
i
2.10 Нахождение локального минимума
Программа предназначена для нахождения локальных минимумов и подсчёта их количества
Входные данные: s[5][5];
Выходные данные: количество k(int)
Листинг программы:
#include "stdafx.h"
#include <stdio.h>
#include <math.h>
int main()
{
int i, j, k=0 ,s[5][5];
//vvod mas
for(i=1;i<=3 ;i++)
for(j=1;j<=3;j++)
scanf("%d",&s[i][j]);
for(i=1;i<=3;i++)
for(j=1;j<=3;j++)
{
if(s[i][j]<s[i+1][j] && s[i][j]<s[i][j+1] && s[i][j]<s[i-1][j] && s[i][j]<s[i][j-1])
{
printf("kol-vo lokal'nux min = %d\n",s[i][j]);
k=1;
}
}
if (k==0)
printf(" lok-ix mini net ");
getchar();
getchar();
getchar();
getchar();
}
Решение задач на треугольник
Программа предназначена для определения, пересекает ли прямая контур треугольника.
Входные данные: a,b
Выходные данные: Пересекает либо нет
Листинг программы:
#include "stdafx.h"
#include <stdio.h>
#include<math.h>
void main()
{
int a, b, y=1;
puts("vvedi b & a (v uravnenii pryamoi Y=aX+b)");
scanf("%d%d", &a,&b);
if( ((y-b)/a<=2-y) && ((y-b)/a>=y-2))
puts("peresekaet");
else
puts("ne peresekaet");
getchar();
getchar();
}
Рисунок 2.3 - Блок-схема к задаче 2.11
Da Нет
Peresekaet Peresekaet
2.12 Печать натурального числа n
Программа предназначена для печати натурального числа n суммой натуральных чисел.
Входные данные: 2 целых числа
Выходные данные: матрица
Листинг программы:
#include "stdafx.h"
#include<stdio.h>
#include<math.h>
void main()
{
int n=20, a,b;
//puts("enter n=");
//scanf("%d",n);
for(a=0,b=n;a<n/2+1,b>n/2-1;a++,b--)
{
printf("%d+%d= %d",a,b,n);
//puts(" ");
printf("\n\n");
}
getchar();
getchar();
getchar();
getchar();
}
Рисунок 2.4 - Блок-схема к задаче 2.12
Написать и протестировать ф-ю
Программа предназначена для тестирования аналога функции STRNCMP().
Входные данные: str1,str2.
Выходные данные: Сравнение строк
Листинг программы:
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
int main()
{
char str1[99], str2[99];
int n;
int fun(char *, char *, int);
//ВВедите первую строку
puts("vvedite stroku 1");
gets(str1);
//Введите вторую строку
puts("vvedite stroku 2");
gets(str2);
puts("vvedite kolichestvo elementov");
scanf("%d", &n);
fun(str1, str2, n);
getchar();
getchar();
}
int fun(char *str1, char *str2, int n)
{
int i, j=0;
//Вводим массив и cравниваем єлементы
for(i=0;i<n;i++)
{
if(str1[i]==str2[i])
j++;
}
if(j==n)
puts("stroki ravni");
else
puts("stroki ne ravni");
return 0;
}
Вывод элемента файла на экран
Программа предназначена для вывода нужных элементов данного файла.
Входные данные: i,n(int);
Выходные данные: Вывод нужного элемента.
#include "stdafx.h"
#include <fstream>
#include <iostream>
#include <cstdio>
#include <stdlib.h>
#define N 100
using namespace std;
int main ()
{
int i,mas[N],n;
FILE *fp;
fp=fopen("qqq.txt","r");
fscanf(fp, "%d", &n);
for(i=0; i<n; i++)
fscanf(fp, "%d", &mas[i]);
for(i=0; i<n; i++)
{
printf("%2d", mas[i]);
}
printf("\n\n");
printf("%d%d%d%d", mas[0],mas[1],mas[n-2],mas[n-1]);
getchar();
getchar();
}
Действия над элементами файла
Программа предназначена для уменьшения размера файла.
Входные данные: i,n(int);
Выходные данные: mas[i]
#include "stdafx.h"
#include <fstream>
#include <iostream>
#include <cstdio>
#include <stdlib.h>
#include <io.h>
#define N 100
int main()
{
int i,mas[N],n;
FILE *fp;
fp=fopen("qqq.txt","r");
fscanf(fp, "%d", &n);
for(i=0; i<n; i++)
fscanf(fp, "%d", &mas[i]);
for(i=0;i<n-50;i++)
printf(" %d " , mas[i]);
fclose(fp);
fp=fopen("qqq.txt" ,"w");
for(i=0;i<n-50;i++)
{
fprintf(fp,"%d\n", mas[i]);
}
fclose(fp);
getchar();
getchar();
}