Задачи
Вариант А1
Написать программу, выводящую на экран результат сравнения двух целых чисел в виде: A>B. Основная программа запрашивает два числа, вызывает функцию и в зависимости от возвращенного значения выводит сообщение. Функция возвращает 1 если A больше B, 0 если A равно B, -1 если A меньше B.
Спойлер
// Вариант 1
#include <stdio.h>
int f(int x, int y) {
if (x > y) return 1;
if (x < y) return -1;
if (x == y) return 0;
}
int main() {
int a, b, y;
scanf("%i%i", &a, &b);
y = f(a, b);
if (y == 1) printf("%i>%i", a, b);
if (y == -1) printf("%i<%i", a, b);
if (y == 0) printf("%i=%i", a, b);
}
Вариант А3
Написать программу, выводящую сумму или разность двух введенных чисел. Основная программа запрашивает два числа и действие, вызывает функцию и выводит результат. Функция возвращает результат требуемого действия.
Спойлер
// Вариант 3
#include <stdio.h>
float func(char x, float y, float z)
{
float g;
if(x=='+') g=y+z;
if(x=='-') g=y-z;
return g;
}
int main()
{
char a;
float b,c,p;
scanf("%c",&a);
scanf("%f%f",&b,&c);
p=func(a,b,c);
printf("%f",p);
}
2 лайка
Вариант А2
Написать программу, выводящую на экран сообщение является ли введенный с клавиатуры символ десятичной цифрой, буквой или другим символом. Основная программа запрашивает символ, вызывает функцию и в зависимости от возвращенного значения выводит сообщение. Функция возвращает 1 если символ числовой, 0 если буквенный и -1 для остальных символов.
Спойлер
// Вариант 2
#include <stdio.h>
int func(int x)
{
if(x>=48 && x<=57)
return 1;
if(x>=65 && x<=90 || x>=97 && x<=122)
return 0;
if(x<48 || x>57 && x<65 || x>90 && x<97 || x>122)
return -1;
}
int main()
{
char a;
int b, c;
a = getchar();
b = func(a);
c = b;
if(c==1)
printf("cifra\n");
if(c==0)
printf("bukva\n");
if(c==-1)
printf("drugoi\n");
}
1 лайк
Вариант А4
Написать программу, выводящую на экран длину гипотенузы прямоугольного треугольника по двум катетам. Основная программа запрашивает длины катетов, вызывает функцию и выводит результат результат вычислений или сообщение об ошибке (-1) в зависимости от возвращенного функцией значения. Функция проверяет корректность переданных ей данных, производит вычисление и возвращает либо результат либо -1 если введены некорректные данные.
Спойлер
// Вариант 4
#include <stdio.h>
#include <math.h>
int func(float x, float y)
{
float z;
z = sqrt(pow(x,2) + pow(y,2));
if(x>0 && y>0)
return z;
else return -1;
}
int main()
{
float a,b,d;
scanf("%f%f",&a,&b);
d = func(a,b);
if(d==-1)
printf("-1");
else
printf("%.1f",d);
}
1 лайк
Вариант А6
Написать программу, выводящую на экран N символов. Основная программа запрашивает символ и количество повторений этого символа, вызывает функцию, по возвращенному результату выводит или не выводит сообщение об ошибке. Функция проверяет корректность введенных данных и возвращает -1 если данные введены не корректно или выводит символы и возвращает 0.
Спойлер
// Вариант 6
#include <stdio.h>
int func(int x)
{
if(x>0) return 0;
else return -1;
}
int main()
{
char a;
int b,c;
a = getchar();
getchar();
scanf("%i",&b);
c = func(b);
if(c==0)
for(int i=0;i<b;i++)
{
printf("%c",a);
}
else printf("error");
}
1 лайк