Int a, a1, a2, k, n, s; //описание переменных

printf("\nЛабораторная работа №4_2");

printf("\nВариант №0");

printf("\nПО-11-1");

printf("\nПупкин Василий\n");

printf("\nВвод исходных данных:\n");//ввод исходных данных

printf("\n a1=");

scanf("%d", &a1); //первый член последовательности

printf("\n a2=");

scanf("%d", &a2); //второй член последовательности

printf("\n n=");

scanf("%d", &n); //количество членов последовательности

printf("\n-----------------");

printf("\n k a s ");

printf("\n-----------------");

s = a1 + a2; //начальное значение суммы

// k - номер очередного члена последовательности

for (k=3; k<=n; k++)

{

a = a1 + a2; //очередное слагаемое

s += a; //очередная сумма

a1 = a2;

a2 = a;

printf("\n%3d %3d %3d", k, a, s);

}

printf("\n-----------------\n");

return 0;

}

3.3. На языке Java:

package javaapplication4_2;

// Импорт библиотеки графических компонентов Swing

import javax.swing.*;

import java.util.*;

public class JavaApplication4_2 // задание нового класса

{

// описание главного метода main этого класса

public static void main(String[] args)

{

//описание переменных:

Int a, a1, a2, n, s; // целого типа

String input, text; // строк класса String

//консольный вывод

System.out.println("Лабораторная работа №4-2");

System.out.println("Вариант №0");

System.out.println("ПО-11-1");

System.out.println("Пупкин Василий");

System.out.println();

// вызов диалогового окна ввода исходных данных

input=JOptionPane.showInputDialog("a1=");

// преобразование из строкового значения в целое

a1=Integer.parseInt(input);

input=JOptionPane.showInputDialog("a2=");

a2=Integer.parseInt(input);

input=JOptionPane.showInputDialog("n=");

n=Integer.parseInt(input);

// формирование строки вывода

text="Значения входных переменных:\na1=" + a1 + "\na2=" + a2 + "\nn=" + n;

// вызов диалогового окна эхо-печати

JOptionPane.showMessageDialog(null, text);

//консольный вывод

System.out.printf("a1=%d\na2=%d\nn=%d\n", a1, a2, n);

//консольный вывод

System.out.println("-----------------");

System.out.println(" k a s ");

System.out.print("-----------------");

// вычисление значений переменных по заданному алгоритму

s = a1 + a2; //начальное значение суммы

// k - номер очередного члена последовательности

for (int k=3; k<=n; k++)

{

a = a1 + a2; //очередное слагаемое

s += a; //очередная сумма

a1 = a2;

a2 = a;

//консольный вывод

System.out.printf("\n%3d %3d %3d", k, a, s);

}

//консольный вывод

System.out.println();

System.out.print("-----------------");

}

}

3.4. На языке PHP:

<!DOCTYPE html>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>

Лабораторная работа №4_2

</title>

</head>

<body BgColor="silver" text="blue">

<H2>Лабораторная работа №4_2</h2>

<H3>Циклы с параметром</h3>

Вариант №0

<br>ПО-11-1

<br>Пупкин Василий

<br>

<br>

<Form name="LabRab_4_2" action="" method="POST">

Первый член последовательности a1:<br>

<input type="text" name="a1" size="5"><br>

Второй член последовательности a2:<br>

<input type="text" name="a2" size="5"><br>

Количество членов последовтельности n:<br>

<input type="text" name="n" size="5"><br>

<input type="submit" value="Вычислить"><br>

</form>

<?php

// получение значения переменной из формы

$n=$_POST['n'];

$a1=$_POST['a1'];

$a2=$_POST['a2'];

if (($n!='') && ($a1!='') && ($a2!=''))

{

//эхо-печать

echo "<br>n=$n";

echo "<br>a1=$a1";

echo "<br>a2=$a2<br>";

echo '<br>-------------------<br>';

echo '.k........a..........s';

echo '<br>-------------------<br>';

// вычисление переменных по заданному алгоритму

$s = $a1 + $a2; //начальное значение суммы

// $k - номер очередного члена последовательности

for ($k=3; $k<=$n; $k++)

{

$a = $a1 + $a2; //очередное слагаемое

$s += $a; //очередная сумма

$a1 = $a2;

$a2 = $a;

echo '<br>';

printf("%3d%'.10d%'.10d", $k, $a, $s);

}

echo '<br>-------------------<br>';

}

?>

</body>

</html>

  1. Компиляция, отладка, тестирование и получение результата:

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задания на лабораторную работу №4

Вариант 1

Задание 1

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задание 2

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задать Int a, a1, a2, k, n, s; //описание переменных - student2.ru , Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Вариант 2

Задание 1

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задание 2

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задать Int a, a1, a2, k, n, s; //описание переменных - student2.ru , Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Вариант 3

Задание 1

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задание 2

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задать Int a, a1, a2, k, n, s; //описание переменных - student2.ru , Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Вариант 4

Задание 1

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задание 2

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задать Int a, a1, a2, k, n, s; //описание переменных - student2.ru , Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Вариант 5

Задание 1

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задание 2

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задать Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Вариант 6

Задание 1

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задание 2

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задать Int a, a1, a2, k, n, s; //описание переменных - student2.ru , Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Вариант 7

Задание 1

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задание 2

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задать Int a, a1, a2, k, n, s; //описание переменных - student2.ru , Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Вариант 8

Задание 1

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задание 2

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задать Int a, a1, a2, k, n, s; //описание переменных - student2.ru , Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Вариант 9

Задание 1

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задание 2

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задать Int a, a1, a2, k, n, s; //описание переменных - student2.ru , Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Вариант 10

Задание 1

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задание 2

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задать Int a, a1, a2, k, n, s; //описание переменных - student2.ru , Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Вариант 11

Задание 1

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задание 2

Алгоритм нахождения квадратного корня из положительного числа x

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

можно представить следующей рекуррентной последовательностью:

y0 = (x+1)/2

yi = (yi-1 + x/yi-1)

(формула Герона Александрийского).

При заданном x определить n-ое приближение его квадратного корня.

Вариант 12

Задание 1

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задание 2

Алгоритм нахождения квадратного корня из положительного числа x

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

можно представить следующей рекуррентной последовательностью:

y0 = x

yi = yi-1 + ( x/yi-1 – yi-1 )/2

При заданном x определить n-ое приближение его квадратного корня.

Вариант 13

Задание 1

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задание 2

Алгоритм нахождения корня k-ой степени из положительного числа x

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

можно представить следующей рекуррентной последовательностью:

y0 = x

yi = yi-1 + ( x/yk-1 i-1 – yi-1 )/k

При заданном x определить n-ое приближение его корня k-ой степени.

Вариант 14

Задание 1

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задание 2

Вывести рекуррентное соотношение для вычисления значения следующего выражения: Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Вычислить значение этого выражения для заданного n.

Вариант 15

Задание 1

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задание 2

Вывести рекуррентное соотношение для вычисления значения следующего выражения: Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Вычислить значение этого выражения для заданного n.

Вариант 16

Задание 1

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

f(x)=

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задание 2

Вывести рекуррентное соотношение для вычисления значения следующего выражения: Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Вычислить значение этого выражения для заданного n.

Вариант 17

Задание 1

Int a, a1, a2, k, n, s; //описание переменных - student2.ru (-π<x<π)

f(x)=

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задание 2

Вывести рекуррентное соотношение для вычисления значения следующего выражения: Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Вычислить значение этого выражения для заданного n.

Вариант 18

Задание 1

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

f(x)=

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задание 2

Вывести рекуррентное соотношение для вычисления значения следующего выражения:

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Вычислить значение этого выражения для заданного n.

Вариант 19

Задание 1

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

f(x)=

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задание 2

Вывести рекуррентное соотношение для вычисления значения следующего выражения: Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Вычислить значение этого выражения для заданного n.

Вариант 20

Задание 1

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

f(x)=

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Задание 2

Вывести рекуррентное соотношение для вычисления значения следующего выражения:

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

Вычислить значение этого выражения для заданного n.

Лабораторная работа № 5

Строки

Тема: Программирование алгоритмов работы со строками.

Цель работы: Освоить основные алгоритмы работы со строками. Освоить методы тестирования программ.

Задание на лабораторную работу

  1. Получить задание в соответствии с номером своего варианта.
  2. Составить схему алгоритма решения задачи.
  3. Написать код программы на языке Паскаль в среде Borland Pascal for Windows.
  4. Осуществить компиляцию, и отладку программы. Провести структурное тестирование программы (тестирование как белого ящика): составить тестовые наборы для тестирования

- в нормальных условиях,

- при граничных условиях,

- при некорректных входных данных,

- по критерию покрытия решений – результат проверки каждого условия принимал значение истина или ложь хотя бы один раз,

- по критерию покрытия условий – все возможные результаты каждой логической операции в условиях были получены хотя бы по одному разу.

  1. Получить результат.
  2. Оформить отчет по лабораторной работе.

Пример оформления работы

  1. Ввести с консоли строку символов. Определить количество цифр в этой строке и найти их сумму.

Начальные значения суммы summa и количества count сбрасываем на ноль. Определим длину введенной строки str, используя функцию Length(str). После этого будем рассматривать строку поэлементно: если очередной элемент - это цифра, то добавляем ее в сумму summa и увеличиваем количество цифр count на единицу. Для определения того, является ли очередной элемент строки цифрой, можно использовать операцию вхождения во множество цифр In [0..9] или коды элементов: код нуля – это 48, код единицы – это 49, и так далее. Найденные цифры, их количество и сумму вывести на экран.

2. Схема алгоритма решения задачи:

Int a, a1, a2, k, n, s; //описание переменных - student2.ru

3. Код программы

3.1. На языке Паскаль:

Program Variant_0;

Uses WinCrt;

Var str: String;

s: String[1];

c: Char;

error: Integer;

i, k, n, summa, count: Word;

Begin

WriteLn('Лабораторная работа №5_1');

WriteLn('Вариант №0');

WriteLn('ИС-11-1');

WriteLn('Пупкин Василий');

WriteLn;

WriteLn('Введите строку символов:');

ReadLn(str);

WriteLn;

n:=Length(str); {определяем длину строки}

summa:=0; {начальные значения суммы и количества цифр - на ноль}

count:=0;

WriteLn('Найденные цифры:');

For i:=1 To n Do {просмотр строки - поиск цифр}

Begin

c:=str[i]; {очередной элемент строки - данное симв типа}

s:=str[i]; {в односимвольной строке s - очередной элемент}

If (c In ['0'..'9']) Then {если очередной элемент - цифра}

Begin

count:=count+1; {увеличиваем количество найденных цифр}

val(s,k,error); {преобразуем строку в число}

summa:=summa+k; {увеличиваем сумму на найденную цифру}

Write(k:3); {выводим найденную цифру на экран}

End; {If}

End; {For}

WriteLn;

WriteLn('summa=', summa);

WriteLn('count=', count);

End.

3.2. На языке Си:

#include <stdio.h> //директивы препроцессора

#include <conio.h>

#include <math.h>

#include <string.h>

Int main()

{

Наши рекомендации