Практикум по программированию. Основы. Ветвление. Прямая и окружность

From AsIsWiki
(Difference between revisions)
Jump to: navigation, search
(Created page with "<div style='max-width:700px;text-align:justify;'> Ветвление __FORCETOC...")
 
Line 1: Line 1:
 
<div style='max-width:700px;text-align:justify;'>
 
<div style='max-width:700px;text-align:justify;'>
[[Практикум по программированию. Основы. Ветвление|Ветвление]]
+
[[Практикум по программированию. Основы. Ветвление. Параллельность прямых|Назад]] ·
 +
[[Практикум по программированию. Основы. Ветвление|Задачи]] ·
 +
[[Практикум по программированию. Основы. Ветвление. Счастливый билет|Дальше]]
  
 
__FORCETOC__
 
__FORCETOC__
Line 81: Line 83:
  
 
----
 
----
[[Практикум по программированию. Основы. Ветвление|Ветвление]]
+
[[Практикум по программированию. Основы. Ветвление. Параллельность прямых|Назад]] ·
 +
[[Практикум по программированию. Основы. Ветвление|Задачи]] ·
 +
[[Практикум по программированию. Основы. Ветвление. Счастливый билет|Дальше]]
 
</div>
 
</div>

Revision as of 10:01, 12 April 2015

Назад · Задачи · Дальше


Contents

Java

import java.util.Scanner;
import java.lang.Math;

public class Task14 {

    public static void main(String[] args) {
        
        Scanner in = new Scanner(System.in);
        
	System.out.println();
        System.out.println(" Поиск точек пересечения прямой Y = K * X + B ");
        System.out.println("  и окружности с центром в начале координат   ");
        System.out.println("----------------------------------------------");

        System.out.print(" Введите коэффициент K: "); 
	double k = in.nextDouble();

        System.out.print(" Введите коэффициент B: "); 
	double b = in.nextDouble();

        System.out.print(" Радиус окружности R: "); 
	double r = in.nextDouble();

        System.out.println("----------------------------------------------");
        
	double d = 4 * k * k * b * b - 4 * (k * k + 1) * (b * b - r * r);

	System.out.printf(" Прямая Y = %.2f * X + %.2f с окружностью радиусом R = %.2f\n", k, b, r);

	double x1, y1, x2, y2;

	if (d < 0) {

	    System.out.println(" не пересекается");

	} else {
	    if (d == 0) {

		x1 = -2 * k * b / (2 * k * k + 2);
		y1 = k * x1 + b;

		System.out.printf(" пересекается в точке X = %.2f, Y = %.2f\n", x1, y1);

	    } else {

		x1 = (-2 * k * b - Math.sqrt(d)) / (2 * k * k + 2);
		y1 = k * x1 + b;
		x2 = (-2 * k * b + Math.sqrt(d)) / (2 * k * k + 2);
		y2 = k * x2 + b;

		System.out.println(" пересекается в точках:");
		System.out.printf(" X1 = %.2f, Y1 = %.2f\n", x1, y1);
		System.out.printf(" X2 = %.2f, Y2 = %.2f\n", x2, y2);

	    }
	}
    }
}


C++



Pascal




Назад · Задачи · Дальше

Personal tools
Namespaces

Variants
Actions
Navigation
Tools