struct student // структура студент { int id; // поля char surname[255]; char subject[255]; int grade; };
int main() { student array[3]={0}; // массив типа student, размер количество студентов
for ( int i = 0; i < 3; i++) // вносим данные в массив { printf("Введите номер студента "); scanf("%d",&array[i].id); printf("\nВведите фамилию студента "); scanf("%s",array[i].surname); printf("\nВведите предмет "); scanf("%s",array[i].subject); printf("\nВведите оценку "); scanf("%s",&array[i].grade); }
char str[255]={0};// строка фамилии которую ищем printf("\nВведите фамилию студента "); scanf("%s",str);
for ( int i = 0; i < 3; i++) if( strcmp( str,array[i].surname)==0) printf(" студента %s равен %d",array[i].surname,array[i].grade );
Как извесно, в информатике следование равяется нулю тогда, когда 1 член равен 1, а второй член равен 0. В остальных же случаях следвание равняется 1. Отсюда методом подбора берем любые целые отрицательные числа, при которых будет выражение истинно.
Сначала возьмем число -5. Подставим
-5*-5 =25>15 Следовательно это истоинно и равно 1 (-5+1)*(-5-1)=24<26 Следовательно это тоже равняется 1
Из этого следует, что выражение истинно(1->1=1)
Теперь попробуем взять число -6
-6*-6=36>15 Отсюда это истоинно и равно 1
(-6+1)*(-6-1)=35>26 Отсюда жто ложно и значит равняется 0
Из этого следует, что выражение ложно (1->0=0)
Отсюда можно сделать вывод, что дальше -5 числа не смысла брать т.к. в этом случае выражение будет равняться 0, а ниже -5 потому что нам нужно наибольшее целое отрицательное, следовательно наш ответ -5
#include "STDIO.H"
#include "STRING.H"
struct student // структура студент
{
int id; // поля
char surname[255];
char subject[255];
int grade;
};
int main()
{
student array[3]={0}; // массив типа student, размер количество студентов
for ( int i = 0; i < 3; i++) // вносим данные в массив
{
printf("Введите номер студента ");
scanf("%d",&array[i].id);
printf("\nВведите фамилию студента ");
scanf("%s",array[i].surname);
printf("\nВведите предмет ");
scanf("%s",array[i].subject);
printf("\nВведите оценку ");
scanf("%s",&array[i].grade);
}
char str[255]={0};// строка фамилии которую ищем
printf("\nВведите фамилию студента ");
scanf("%s",str);
for ( int i = 0; i < 3; i++)
if( strcmp( str,array[i].surname)==0)
printf(" студента %s равен %d",array[i].surname,array[i].grade );
scanf("%s",str);
return 0;
}
Как извесно, в информатике следование равяется нулю тогда, когда 1 член равен 1, а второй член равен 0. В остальных же случаях следвание равняется 1. Отсюда методом подбора берем любые целые отрицательные числа, при которых будет выражение истинно.
Сначала возьмем число -5. Подставим
-5*-5 =25>15 Следовательно это истоинно и равно 1
(-5+1)*(-5-1)=24<26 Следовательно это тоже равняется 1
Из этого следует, что выражение истинно(1->1=1)
Теперь попробуем взять число -6
-6*-6=36>15 Отсюда это истоинно и равно 1
(-6+1)*(-6-1)=35>26 Отсюда жто ложно и значит равняется 0
Из этого следует, что выражение ложно (1->0=0)
Отсюда можно сделать вывод, что дальше -5 числа не смысла брать т.к. в этом случае выражение будет равняться 0, а ниже -5 потому что нам нужно наибольшее целое отрицательное, следовательно наш ответ -5
ответ: -5