Конструктор блок схем пригодится студентам и школьникам изучающим программирование. Так же он создан с целью публикации на нашем сайте блок-схем для учебных примеров.
Чтобы построить блок-схему надо ввести в редактор код, состоящий из двух частей. В первой части кода описываются отдельные элементы блок-схемы. А во второй - связи между блоками, а также направления соединения блоков.
Доступны следующие блоки (зарезервированные команды, которые можно использовать):
start
, end
, operation
, subroutine
, condition
, inputoutput
.
Приведем подробное описание одной команды, например следующей:
st=>start: Начало: >http://primat.org[blank]
Здесь st
- придуманное вами имя для блока; Начало
- это текст надписи, которая будет отображаться в блоке; http://primat.org[blank]
- ссылка, открывающаяся в новом окне при нажатии на надпись (не обязательный элемент).
Ниже приведен пример описания блоков, которые будут использоваться в блок-схеме.
st=>start: Начало
e=>end: Конец
op1=>operation: Вычисления
op2=>operation: Решение
sub1=>subroutine: Подпрограмма
cond=>condition: Условие
c2=>condition: Проверка
io=>inputoutput: Вывод данных
Ниже приведен код, отвечающий за соединение блоков стрелками.
st->op1(right)->cond
cond(yes, right)->c2
cond(no)->sub1(left)->op1
c2(yes)->io->e
c2(no)->op2->e
Поясним некоторые команды. Например, следующая команда:
st->op1(right)->cond
означает, что из стартового блока str
следует провести линию к блоку op1
. А дальше из блока op1(right)
проводом вправо линию к блоку cond
.
В следующей команде:
cond(yes, right)->c2
из логического блока cond
проводится линия для случая yes
вправо (помечается знаком "+") к следующему условному блоку c2
.
В завершение приведем еще один пример классической блок-схемы (можно скопировать и вставить в конструктор, чтобы увидеть схему):
st=>start: начало
e=>end: конец
op1=>operation: операция
sub1=>subroutine: подпрограмма
cond=>condition: условие
io=>inputoutput: вывод
st->op1->cond
cond(yes)->io->e
cond(no)->sub1(right)->op1
#include <cmath>
using namespace std;
int main() {
double x, y;
cin >> x;
if (x > 2.5){
y = x + 1;
cout << y;
}
else if (x <= 2.5 && x >= 0){
y = 1 - pow(x, 5);
cout << y;
}
else {
y = log(abs(sin(x)));
cout << y;
}
return 0;
}
using namespace std;
#include <windows.h>;
const int MAX_SIZE = 100;
int main() {
SetConsoleOutputCP(1251);
SetConsoleCP(1251);
int n, m;
int matrix[MAX_SIZE][MAX_SIZE];
cout << "Введіть розміри квадратної матриці (n * n): ";
cin >> n;
if (n <= 0 || n > MAX_SIZE) {
cout << "Недійсний розмір матриці!" << endl;
return 1;
}
m = n;
cout << "Введіть елементи матриці:" << endl;
for (int i = 0; i < n; ++i) {
for (int j = 0; j < m; ++j) {
cin >> matrix[i][j];
}
}
int minElement = matrix[0][0];
int minColumn = 0;
for (int i = 1; i < n; ++i) {
if (matrix[i][i] < minElement) {
minElement = matrix[i][i];
minColumn = i;
}
}
cout << "Мінімальний елемент головної діагоналі: " << minElement << endl;
cout << "Стовпець з мінімальним елементом головної діагоналі: " << minColumn + 1 << endl;
return 0;
}
class Program
{
static void Main(string[] args)
{
числове значення в байтах: int input = int.Parse(Console.ReadLine());
string[] sizes = { };
double[] thresholds = { 1024, 1024, 1024 };
int index = 0;
while (input >= thresholds[index] && index < sizes.Length - 1)
{
input /= (int)thresholds[index];
index++;
}
розмірність: {input} }
}
int main() {
int num;
for (num = 1000; num < 10000; num++) {
int temp = num;
int count_5 = 0;
while (temp > 0) {
if (temp % 10 == 5) {
count_5++;
}
temp /= 10;
}
if (count_5 == 2) {
printf("%d\n", num);
}
}
return 0;
}
using namespace std;
int main() {
float tmp = 0;
float ind = 0;
float A[5] = {10, 20,30,40,50};
float C[5] = { 7,6,5,4,3 };
for (int i=0; i<5; i++) {
if (A[i]/C[i]>tmp) {
tmp=A[i]/C[i];
ind=i;
}
}
for (int i = 0; i < 5; i++)
cout <<A[i]<<" ";
cout<<" "<< "\n";
for (int i = 0; i < 5; i++)
cout <<C[i]<<" ";
cout<<" " <<"\n";
cout<<"Nomer:"<< ind;
cout<<" " << " \n";
cout <<"Max "<< tmp;
return 1;
}
a = datetime.now()
total = []
print("Cьогоднiшня дата: " + str(a))
tax = int(input("Введiть налог %: "))
for i in range(len(self.name)):
month = self.data_start_m[i]
year = self.data_start_y[i]
salary_tax = int(self.salary[i] * (tax/100))
print("ПIБ: " + self.name[i])
print("Посада: " + self.post[i])
print(f"Дата працевлаштування: {self.data_start_y[i]}|| {self.data_start_m[i]}")
print("Рiк:", year)
while True:
salary = random.randint(self.salary[i] - salary_tax,self.salary[i])
total.append(salary)
print(f"Мicяць:{month}, ЗП: {salary}")
month += 1
if month == 13:
month = 1
if year+1 == a.year:
print(f"За {year} рiк заробiтна плата становить: {sum(total)}")
break
else:
print(f"За {year} рiк заробiтна плата становить:{sum(total)}")
year +=1
total = []
{
for(int i = 0; i < size; ++i){
cout << arr[i] << " ";
}
cout << endl;
}
from array import array
X=array('i', [1]) #Одномерный массив
Y=array('i',[2]) #Одномерный массив
output_file = open('output4.txt', 'a') #Удалить файл перед запуском программы
N = int(input("Введите N = "))
for k in range(1, N): # 0 элемент = 1
X.append(3*X[k-1]+k)
Y.append(X[k-1]+Y[k-1])
for k in range(N):
print(X[k], end = ' ')
output_file.write(str(X[k]) + ' ')
output_file.write('\n')
for k in range(N):
print(Y[k], end=' ')
output_file.write(str(Y[k]) + ' ')
output_file.close()
{
do
{
left++;
right++;
if (*left > *right)
{
return 1;
}
else if (*left < *right)
{
return -1;
}
} while ((*left == *right) && *left && *right);
return 0;
}
char left[50];
printf("Input the massive left: ");
scanf("%s", left);
char right[50];
printf("Input the massive right: ");
scanf("%s", right);
cout << strcmp1(left, right) << endl;
cout << "The large of left is " << strlen(left) << endl;
cout << "The large of right is " << strlen(right) << endl;
}