Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
Jürgen Hein
/
iax0583
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Members
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
6dd5505a
authored
Oct 11, 2024
by
Jürgen Hein
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Esialgne töötav versioon, sisestus veel puudulik Kodutoo1.c
parent
a7fe571f
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
74 additions
and
39 deletions
Kodutöö 1/Kodutoo1.c
Kodutöö 1/Kodutoo1.c
View file @
6dd5505a
/*Ant
ud on funktsioon ja teatud algväärtused.
/*Ant
ud on funktsioon ja teatud algväärtused.
...
...
@@ -5,85 +5,120 @@
#include <stdio.h>
#include <math.h>
#define veerg 2
#define rida 15
int
main
(
void
)
{
double
A
;
//argumendi x algväärtus A
double
H
;
//Samm
double
C
;
//Sammu koefitsent
double
YM
;
//Väärtuste ülempiir
int
double
Vastus
[
2
][
15
];
//Tabeli veergude ja ridade arv
double
XSumma
;
double
Vastus
[
veerg
][
rida
];
//Tabeli veergude ja ridade massiiv
double
XSumma
;
//Ajutine summa, et leida x väärtuste rea liikmeid.
double
x
;
//Ajutine väärtus x väärtuste leidmiseks
//Sisestus
int
i
;
//Järjenumber
double
puudub
[
rida
];
//Massiiv, et näidata x väärtusi, mille korral y väärtus puudub.
//Sisestus
do
{
printf
(
"Sisestage argumendi x algväärtus A"
);
scanf
(
"%lf"
,
&
A
);
}
while
(
3
>
N
||
N
>
15
);
printf
(
"Sisestage argumendi x algväärtus A
\n
"
);
if
(
scanf
(
"%lf"
,
&
A
)
!=
1
)
{
printf
(
"Sisestatud väärtus ei sobi, sisestage reaalarv."
);
scanf
(
"%*s"
);
//Kui väärtus pole reaalarv, ei anta A-le väärtust.
}
//Ehk sisestatud väärtust ei arvestata. Vastasel juhul loop ei lõpeks.
}
while
(
scanf
(
"%lf"
,
&
A
)
!=
1
);
//Kontroll, kas sisestatud on reaalarv,
/*Kui ...=0, siis A-le ei ole määratud väärtust ehk
*(A ei ole double väärtus), kui ...=1, siis on.*/
do
{
printf
(
"Samm H"
);
scanf
(
"%lf"
,
&
H
);
}
while
(
H
<
1
);
//H ei saa olla väiksem kui 0.
printf
(
"Sisestage samm H
\n
"
);
if
(
scanf
(
"%lf"
,
&
H
)
!=
1
||
H
<=
0
)
{
printf
(
"Sisestatud väärtus ei sobi, sisestage reaalarv, mis on suurem kui 0"
);
scanf
(
"%*s"
,
&
H
);
}
}
while
(
scanf
(
"%lf"
,
&
H
)
!=
1
||
H
<=
0
);
//H ei saa olla väiksem kui 0.
//H peab olema reaalarv.
do
{
printf
(
"Sisestage sammu koefitsent C (C>=1)"
);
scanf
(
"%lf"
,
&
C
);
}
while
(
C
>=
1
);
printf
(
"Sisestage sammu koefitsent C (C>=1)
\n
"
);
if
(
scanf
(
"%lf"
,
&
C
)
!=
1
||
C
<
0
)
{
printf
(
"Sisestatud väärtus ei sobi, sisestage reaalarv."
);
scanf
(
"%*s"
,
&
C
);
}
}
while
(
C
<
0
||
scanf
(
"%lf"
,
&
C
)
!=
1
);
//C<0 ja reaalarv kontroll
do
{
printf
(
"Sisestage funktsiooni väärtuse y ülempiir YM "
);
scanf
(
"%lf"
,
&
YM
);
}
while
();
//?
printf
(
"Sisestage funktsiooni väärtuse y ülempiir YM
\n
"
);
if
(
scanf
(
"%lf"
,
&
YM
)
!=
1
)
{
printf
(
"Sisestatud väärtus ei sobi, sisestage reaalarv."
);
scanf
(
"%*s"
,
&
YM
);
}
}
while
(
scanf
(
"%lf"
,
&
YM
)
!=
1
);
//reaalarvu kontroll
//Töötlus
for
(
i
=
0
;
i
<
15
;
i
++
)
//funktsiooni väärtusi võib olla max 15.
//x väärtuste leidmine
for
(
i
=
0
;
i
<
rida
;
i
++
)
//funktsiooni väärtusi võib olla max 15.
{
if
(
i
=
0
);
switch
(
i
)
{
case
0
:
Vastus
[
0
][
i
]
=
A
;
XSumma
=
Vastus
[
0
][
i
];
//Jada 1. liikme A leidmine
break
;
case
1
:
XSumma
=
XSumma
+
H
;
Vastus
[
0
][
i
]
=
A
+
H
;
//Jada 2. liikme A+H leidmine
break
;
default:
XSumma
=
XSumma
+
(
H
*
(
pow
(
C
,(
i
-
1
))));
//Jada n. liige A+H+CH+C^(i-1)*H+....
Vastus
[
0
][
i
]
=
XSumma
;
}
if
(
i
=
1
);
{
Vastus
[
0
][
i
]
=
A
+
H
;
}
XSumma
=
A
+
H
XSumma
=
XSumma
+
(
H
*
C
^
(
i
-
1
))
Vastus
[
0
][
i
]
=
XSumma
}
for
(
i
=
0
;
i
<
15
;
i
++
)
//funktsiooni väärtusi võib olla max 15.
//y väärtuste leidmine
for
(
i
=
0
;
i
<
rida
;
i
++
)
//funktsiooni väärtusi võib olla max 15.
{
if
(
-
2
<
Vastus
[
0
][
i
]
||
Vastus
[
0
][
i
]
<
2
)
if
(
Vastus
[
0
][
i
]
<-
2
||
Vastus
[
0
][
i
]
>
2
)
//Määramispiirkond (-2;
2)
{
Vastus
[
1
][
i
]
=
'
Puudub
'
;
Vastus
[
1
][
i
]
=
puudub
[
i
]
;
}
else
{
x
=
Vastus
[
0
][
i
];
Vastus
[
1
][
i
]
=
(
7
*
x
^
2
+
18
*
x
-
14
)
/
(
sqrt
(
4
-
x
^
2
))
Vastus
[
1
][
i
]
=
(
7
*
pow
(
x
,
2
)
+
18
*
x
-
14
)
/
(
sqrt
(
4
-
pow
(
x
,
2
)));
}
}
//Väljastus
printf
(
"
\n
Tulemused on esitatud tabelis:
\n
"
);
i
=
0
;
while
(
i
<
2
)
{
//2 veergu
j
=
0
;
while
(
j
<
15
)
{
printf
(
"%lf "
,
Vastus
[
i
][
j
]);
j
++
;
for
(
i
=
0
;
i
<
rida
;
i
++
)
//15 rida
{
if
(
Vastus
[
1
][
i
]
<
YM
)
{
if
(
Vastus
[
1
][
i
]
==
puudub
[
i
])
{
printf
(
"%lf, Puudub "
,
Vastus
[
0
][
i
]);
}
else
{
printf
(
"%lf, %lf "
,
Vastus
[
0
][
i
],
Vastus
[
1
][
i
]);
}
printf
(
"
\n
"
);
i
++
;
}
else
{
i
=
rida
;
}
}
return
0
;
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment