Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПРАКТИКУМ_4.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
292.35 Кб
Скачать

13. Растяжение списка и вставка, удаление из списка и сжатие. Вариант 1.

/ Работа со спискомв виде массива c применением дополнительного массива В

#include "stdafx.h"

#include <iostream>

using namespace std;

#include <conio.h>

#define SIZE 10

void main()

{

int A[SIZE],B[SIZE],i,n,k;

char ch;

bool pris=0; // признак необходимости действий с массивом

cout<<"Enter n\n";

cin>>n;

cout<<"Enter spisok\n";

for(i=0;i<=n-1;i++) cin>>A[i];

while(pris==0)

{

cout<<"Do you like to dell item? – Y | y \n";

cin>>ch;

if((ch=='Y')||(ch=='y'))

{

cout<<"Enter index \n"; // индекс удаляемого элемента

cin>>k;

for(i=0;i<k;i++) B[i]=A[i];

for(i=k;i<=n-2;i++) B[i]=A[i+1];

n--;

for(i=0;i<=n-1;i++) cout<<B[i];

for(i=0;i<=n-1;i++) A[i]=B[i]; // смена исходного А

}

cout<<"\n Do you like to put item? – Y | y \n";

cin>>ch;

if((ch=='Y')||(ch=='y'))

{

cout<<"Enter place for putting\n";

cin>>k;

for(i=0;i<k;i++) B[i]=A[i];

cout<<"Enter new item\n";

cin>>B[k];

n++;

for(i=k+1;i<=n-1;i++) B[i]=A[i-1];

for(i=0;i<=n-1;i++) cout<<B[i];

}

cout<<"\n Do you like to finish? – Y | y \n";

cin>>ch;

if((ch=='Y')||(ch=='y'))

{

for(i=0;i<=n-1;i++) cout<<B[i];

pris=1;

}

}

cout<<"\n Your work is finished!";

getch();

}

14. Растяжение списка и вставка, удаление из списка и сжатие. Вариант 2.

#include "stdafx.h"

#include <iostream>

using namespace std;

#include <conio.h>

#define SIZE 10

int main()

{

int A[SIZE],i,n,k,b,t;

char ch[3]; // рабочий массив

bool pris=0;

cout<<"Enter n\n";

cin>>n;

cout<<"Enter spisok\n";

for(i=1;i<=n;i++) cin>>A[i];

while(pris==0)

{

cout<<"Do you like to dell item?\n";

// Вводить можно YES ,yes,not,NOT

for(i=0;i<=2;i++) cin>>ch[i];

if(ch[0]=='Y'||ch[0]=='y')

{

cout<<"Enter index \n"; // индекс удаляемого элемента

cin>>k;

for(i=k;i<=n-1;i++) A[i]=A[i+1];

for(i=1;i<=n-1;i++) cout<<A[i];

n--;

}

cout<<"\n Do you like to put item?\n";

for(i=0;i<=2;i++) cin>>ch[i];

if(ch[0]=='Y'||ch[0]=='y')

{

cout<<"Enter place for putting\n";

cin>>k; // место вставки элемента

n++;

cout<<"\n Enter new item\n";

cin>>b;

for(i=k+1;i<n-1;i++) A[i]=A[i-1];

A[k]=b;

for(i=1;i<=n;i++) cout<<A[i];

}

cout<<"\n Do you like to finish?\n";

for(i=0;i<=2;i++) cin>>ch[i];

if(ch[0]=='Y'||ch[0]=='y')

{

for(i=1;i<=n;i++) cout<<A[i];

pris=1;

}

}

cout<<"\n Your work is finished!";

cin>>n;

return 0;

}

15. Подсчет количества цифр в целом числе

include "stdafx.h"

#include <iostream>

using namespace std;

#include <conio.h>

int main()

{

int n,k,m=0;

cout<<"Enter n\n";

cin>>n;

k=n;

do

{

k=k/10;

m++;

} while (k>=1);

cout<<"\n m= "<<m<<"\n";

getch();

return 0;

}