antrotip
?>

Нужно (pascalabc.net) в службе социального обеспечения (собес) имеется список пенсионеров. о каждом пенсионере содержатся сведения: фамилия, имя, отчество, адрес (район, улица, дом, квартира), место и дата рождения, общий стаж работы и стаж работы на "вредном производстве", пол, зарплата, из которой была начислена пенсия, размер пенсии. создать массив из записей. выдать следующие сведения: по данным о пенсионере (фамилии, имени, отчеству) выдать размер его пенсии; по стажу работы на "вредном производстве" -список пенсионеров; список пенсионеров, имеющих пенсию ниже средней.

Информатика

Ответы

Radikovnanikolaeva
//PascalABC.NET 3.2 сборка 1318

Type
  people=record
    subn:string;  //фамилия
    n:string;     //имя
    otn:string;   //отчество
    rai:string;     //район
    street:string;  //улица
    hou:integer;    //дом
    ap:integer;     //квартира
    plBor:string;      //место рождения
    dayBor:integer;    //день рождения
    mounthBor:integer; //месяц рождения
    yearBor:integer;   //год рождения
    mainWorkTime:integer; //общий стаж работы
    dangWorkTime:integer; //стаж работы на "вредном производстве"
    gender:string;      //пол
    moneyPerMounth:integer; //з/п, из которой была начислена пенсия
    oldMoneyPerMounth:integer; //пенсия
  end;

 Var
  oldPeople:array of people;
  i,n,st:integer;
  sFIO:string;
  sr:real;
begin
sr:=0;
write('Введите количество пенсионеров:');
readln(n);
setlength(oldPeople,n);
for i:=0 to n-1 do
  begin
    write('Фамилия пенсионера #',i,':');
    readln(oldPeople[i].subn);
    write('Имя пенсионера #',i,':');
    readln(oldPeople[i].n);
    write('Отчество пенсионера #',i,':');
    readln(oldPeople[i].otn);
    write('Район пенсионера #',i,':');
    readln(oldPeople[i].rai);
    write('Улица пенсионера #',i,':');
    readln(oldPeople[i].street);
    writeln('Дом пенсионера #',i,':');
    readln(oldPeople[i].hou);
    writeln('Квартира пенсионера #',i,':');
    readln(oldPeople[i].ap);
    writeln('Место рождения пенсионера #',i,':');
    readln(oldPeople[i].plBor);
    writeln('День рождения пенсионера #',i,':');
    readln(oldPeople[i].dayBor);
    writeln('Месяц рождения пенсионера #',i,':');
    readln(oldPeople[i].mounthBor);
    writeln('Год рождения пенсионера #',i,':');
    readln(oldPeople[i].yearBor);
    writeln('Общий стаж работы пенсионера #',i,':');
    readln(oldPeople[i].mainWorkTime);
    writeln('Cтаж работы на "вредном производстве" пенсионера #',i,':');
    readln(oldPeople[i].dangWorkTime);
    writeln('Пол пенсионера #',i,':');
    readln(oldPeople[i].gender);
    writeln('з/п, из которой была начислена пенсия пенсионера #',i,':');
    readln(oldPeople[i].moneyPerMounth);
    writeln('Пенсия пенсионера #',i,':');
    readln(oldPeople[i].oldMoneyPerMounth);
    sr+=oldPeople[i].oldMoneyPerMounth;
end;
write('Введите ФИО пенсионера');
readln(sFIO);
var FIO:=sFIO.Split;
for i:=0 to n do
if (oldPeople[i].subn=FIO[0]) and (oldPeople[i].n=FIO[1]) and (oldPeople[i].otn=FIO[2]) then
  begin
    writeln(oldPeople[i].oldMoneyPerMounth);
    break;
  end;
write('Введите стаж работы на "вредном производстве":');
readln(st);
for i:=0 to n do
if oldPeople[i].dangWorkTime=st then
 writeln(oldPeople[i].subn,' ',oldPeople[i].n,' ',oldPeople[i].otn);
sr/=n;
writeln('Список пенсионеров с зарплатой ниже среднего');
for i:=0 to n do
if oldPeople[i].oldMoneyPerMounth<sr then
 writeln(oldPeople[i].subn,' ',oldPeople[i].n,' ',oldPeople[i].otn);
end.
Кирьяков-Крикунов
#include <iostream>
#include <cstdlib>
#include <vector>
using namespace std;

int main()
{
vector<int> v;
cout <<"Укажите размер массива: ";
int s;
cin >>s;
srand(time(0));
for(int i=0; i!=s; ++i)
v.push_back(rand()%100);
int find;
cout <<"Введите число для поиска: ";
cin >>find;
bool founded = false;
for(auto it=v.begin(); it!=v.end(); ++it)
if(*it==find) founded=true;
if(founded)
cout <<"Это число есть в массиве!" <<endl;
else cout <<"Такого числа нет в мвссиве!" <<endl;

return 0;
}
kurmaleeva
1. Если имеется в виду язык Pascal, то получим следующее:
var: a;
//PascalABC.NET (версия 3.1, сборка 1210 от 29.03.2016)
begin
  readln(a);
  b:=a+a;
  writeln (b);
end.

Program50.pas(5) : Неизвестное имя 'b'

2. Попробуем такой вариант на Python

a =int(input())
b = a+a
print(b)

При вводе а получим на выходе 10

Получается, что в Pacal требуется объявлять переменные в секции переменных, или в любом месте программы можно объявить переменную с служебного слова var для PascalABC.net. Первый код можно переписать так, и он будет работать:

var: a;
//PascalABC.NET (версия 3.1, сборка 1210 от 29.03.2016)
begin
  readln(a);
  var b:=a+a;
  writeln (b);
end.

Рузультат при введенном значении 5 равен 10

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Нужно (pascalabc.net) в службе социального обеспечения (собес) имеется список пенсионеров. о каждом пенсионере содержатся сведения: фамилия, имя, отчество, адрес (район, улица, дом, квартира), место и дата рождения, общий стаж работы и стаж работы на "вредном производстве", пол, зарплата, из которой была начислена пенсия, размер пенсии. создать массив из записей. выдать следующие сведения: по данным о пенсионере (фамилии, имени, отчеству) выдать размер его пенсии; по стажу работы на "вредном производстве" -список пенсионеров; список пенсионеров, имеющих пенсию ниже средней.
Ваше имя (никнейм)*
Email*
Комментарий*