is this php base website or on another platform?

558fe5180e0e8fc922d31c23ef84d240

Hi i am computer science students. I always confused to about php base websites or another website. Yesterday my teacher gave me assingement to check website either it is php base or other platform. But i haven't decided to give answer. I am week student in class. please help me in this regarding. I am sharing a weblink please expert tell me. is this php base or anohter platform
(https://www.malumaat.pk/latest-wapda-jobs)
Please tell above mentioned link is on php or not?
Thanks

How to convert the elements in a 2d string array to int and sum the rows?

558fe5180e0e8fc922d31c23ef84d240

This is the code i have.
My vector is a 5x4 string vector which get test scores from a inputbox to get displayed in a listbox. I want to find the avergare in every test score so im trying to convert the elements from StudentsScores (my string 2d vector) to int so i can sum the rows and find the average but when i input "100, 100, 100, 100, 90, 90, 90, 90, 80, 80, 80, 80, 70, 70, 70, 70, 60, 60, 60, 60 to test if my code is working all i get if 60, 60, 60, 60, 60 in my average listbox.

 For Index = 0 To 4
            For InnerIndex = 0 To 3

                TempTotal = TempTotal + CInt(StudentsScores(Index, InnerIndex))

            Next
            'TempTotal /= 4
            lstAvg.Items.Add(TempTotal.ToString())
        Next

How do you put in a prompt in to request the input file name?

558fe5180e0e8fc922d31c23ef84d240

This is what I have so far the teacher wants us to request the file name and I have no clue where to even start. Thank you for the help!

#include <iostream>
#include <string>
#include <fstream>
#include <cmath>
#include <iomanip>


using namespace std;

int main() 


   ifstream inFile;
   ofstream outFile;

   string firstName;
   string lastName;

   double currentSal;
   double payInc;

  inFile.open("Ch3_Ex5Data.txt");
  outFile.open("Ch3_Output.dat");



outFile << fixed << showpoint << setprecision(2);

inFile >> lastName >> firstName;
inFile >> currentSal >> payInc;
outFile <<  firstName << " " << lastName << " " <<  ((currentSal + currentSal * (payInc / 100)));
outFile << endl;

inFile >> lastName >> firstName;
inFile >> currentSal >> payInc;
outFile <<  firstName << " " << lastName << " " << ((currentSal + currentSal * (payInc / 100)));
outFile << endl;

inFile >> lastName >> firstName;
inFile >> currentSal >> payInc;
outFile <<  firstName << " " << lastName << " " << ((currentSal + currentSal * (payInc / 100)));
outFile << endl;



inFile.close();
outFile.close();
cin.get();


return 0;

Average resistance

558fe5180e0e8fc922d31c23ef84d240

Project: Average resistance
A student wants to measure a resistivity of a
material of certain wire of radius 2 mm, and
length of 25 cm. He got the following data
Voltage (V): 100, 90, 80, 70, 60, 50, 40, 30, 20, 7
Current (A): 11, 8, 7, 6, 5.7,5, 3.9, 2.3, 2.1, 1.1
Find the avg?

how to calculate total of selected combo box items

558fe5180e0e8fc922d31c23ef84d240
If Me.cbobraketype.SelectedItem = ("Rim Brakes") Then
        braketype = ("Rim Brakes")
        price = "120"
        braketype = ("Rim Brakes")


    ElseIf Me.cbobraketype.SelectedItem = ("Disk Brakes") Then
        braketype = ("Disk Brakes")
        price = "150"
        braketype = ("Disk Brakes")



    End If

    'choose type of frame
    If Me.cboframetype.SelectedItem = ("Aluminium") Then
        frametype = ("Aluminium")

    End If

    'choose type of brakes
    If Me.cbobraketype.SelectedItem = ("Rim Brakes") Then
        braketype = ("Rim Brakes")
        price = "390"
        braketype = ("Rim Brakes")

    ElseIf Me.cbobraketype.SelectedItem = ("Disk Brakes") Then
        braketype = ("Disk Brakes")
        price = "430"
        braketype = ("Disk Brakes")

    End If

Keep the selected treeview row fixed

558fe5180e0e8fc922d31c23ef84d240

The selected row keeps on deselect when the new value is updated in that position. Can we just keep the selection fixed even when the row value changes. Please have a look at the sample code given below, where a treeview row are getting updated every second but as the value gets updated, the row automatically deselects. Please help me with the idea to get the selection fixed even when the value changes. Thank you.

from tkinter import ttk
import tkinter
import threading

def main():
    root = tkinter.Tk()

    ccols = ('num1','num2')
    treeview = ttk.Treeview(root, columns=ccols)
    for col in ccols:
        treeview.heading(col, text=col)
    treeview.grid(row=8, column=0)

    def sample():
       for i in range(100):
           treeview.delete(*treeview.get_children()) 
           treeview.insert("","end",values=(i,0))

       threading.Timer(1.0, sample).start()

    sample()
    root.mainloop()


if __name__ == '__main__':

main()

Parse text file line by line and split each line and store in matrix form.

558fe5180e0e8fc922d31c23ef84d240

data1,true,2000,422
data2,false,2001,421
data3,true,2050,427
data4,true,2004,432
the above data is in sample.txt. I want to write a program using a for loop and any filereader class or by any means, such that my output will be stored in as follows:

My_Data[1]= data1,true,2000,422
My_Data[1][0]= data1
My_Data[1][1]= true
My_Data[1][2]= 2000

My_Data[2]= data2,false,2001,421
My_Data[2][0]= data2
My_Data[2][1]= false
I want to access each My_Data[i] individually and under that My_Data[i][0] ,My_Data[i][1] and so on .

Can anyone please help writing this type of code ?

Open Website from String variable

558fe5180e0e8fc922d31c23ef84d240

Hi, so I am very new to coding and I wanted to make something that opens a website stored in a string variable like this:

#include <string>
#include <iostream>
#include <windows.h>

int main()
{
string url = https://google.com;

//now I dont know how to open the url from the string
ShellExecute(NULL, "open", "https://google.com", NULL, NULL, SW_SHOWMAXIMIZED);
}

Unfortunately I dont know how to open the url from the string. I know how to open an url but not how to open one stored in a variable.
Tanks for all answers.

Random images from imagelist

558fe5180e0e8fc922d31c23ef84d240

Trying to make a game where explosions randomly appear on the screen using visual studio. I figured out how to make a single picture change location on the screen. So, I wanted to make the illusion of an explosion using imagelist. When I try to do it I get an error on my visual studio when I try to use Location. Location is underlined and say the following "ImageList" does not contain a definition for "Location" and no accessible extension method "Location" accepting a first argument of type "ImageList" could be found (Are you missing a using directive or an assembly reference?) I wanted to add more explosions on the screen .

 using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Linq.Expressions;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace random_image
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        int num = 0;
        void Randompics()
        {
            int a;
            Random rnd = new Random();
            a = rnd.Next(30, 450);
            boom.Location = new Point(500, a);
        }
        void Explosions()
        {
            /*
            int a;
            Random rnd = new Random();
            a = rnd.Next(30, 450);
            symbol.Location = new Point(500, a);
            */
            Random rnd = new Random();
            int a;
            int x = rnd.Next(0, 800);
            int y = rnd.Next(0, 500);
            imageList1.Location = new Point(x,y);
            boom.Image = imageList1.Images[num];
            if (num == imageList1.Images.Count - 1)
            {
                num = 0;
            }
            else
                num++;
        }
        private void timer1_Tick(object sender, EventArgs e)
        {
            Explosions();
            //Randompics();
        }
    }
}

MY CODE STILL REGISTERS A USER WITH THE SAME USERNAME

558fe5180e0e8fc922d31c23ef84d240
                    function username_exists($username){
                        global $db;
                        $sql = "SELECT 'username' FROM users WHERE 'username' = '$username'";
                        $result = mysqli_query($db, $sql);
                        confirmquery( $result );

                         if (mysqli_num_rows($result) > 0) {
                           return true;
                         }else {
                           return false;
                         }
                    }
                    if(username_exists($username)){
                            $error['username'] = 'Username already exists';
                          }

my function is not working

558fe5180e0e8fc922d31c23ef84d240
                        function username_exists($username){
                            global $db;
                            $sql = "SELECT 'username' FROM users WHERE 'username' = '$username'";
                            $result = mysqli_query($db, $sql);
                            confirmquery( $result );

                             if (mysqli_num_rows($result) > 0) {
                               return true;
                             }else {
                               return false;
                             }
                        }
                        if(username_exists($username)){
                                $error['username'] = 'Username already exists';
                              }

How to move tkinter window | override-redirect flag

558fe5180e0e8fc922d31c23ef84d240

I have already created functions to handle that. But it's shacking when i try to move( After add more widgets). Can somebody help me with that.

from tkinter import *
from PIL import Image, ImageTk
import time

class modtk(Tk):
    toptitlebar = None
    maincanvaswindow = None
    resizeon = False
    dragging = False

    def updatetopbut(self, event):
        self.closebutton.config(fg=self.ttfg)
        self.fullscreenbutton.config(fg=self.ttfg)
        self.minimizebutton.config(fg=self.ttfg)

    def downdatetopbut(self, event):
        self.closebutton.config(fg=self.ttbg)
        self.fullscreenbutton.config(fg=self.ttbg)
        self.minimizebutton.config(fg=self.ttbg)

    def modify(self, title="tk", icon=None, titlebg="#ffffff", titlefg="#000000", bg="#EBEBEB"):
        self.tt = title
        self.ico = icon
        self.ttbg = titlebg
        self.ttfg = titlefg
        self.bgbg = bg
        self.title(title)
        self.width = 150
        self.height = 200
        self.maximized = False
        self.map = 0
        self.resizeside = None
        self.moveok = False
        self.minsizex = 0
        self.minsizey = 0
        self.resizeadjx = self.winfo_rootx()
        self.resizeadjy = self.winfo_rooty()
        self.update_idletasks()
        self.overrideredirect(True)
        self.config(bg=self.bgbg)
        if not icon == None:
            try:
                icon = Image.open(icon)
                icon = icon.resize((30, 30))
                icon = ImageTk.PhotoImage(icon)
            except Exception as e:
                print(e, "File should be a .png file.")
                icon = None
        __class__.toptitlebar = Frame(self, height=34, bd=0, highlightthickness=1, highlightbackground="#000000",
                                      bg=titlebg)
        __class__.toptitlebar.pack(side=TOP, fill=X)

        __class__.toptitlebar.bind("<ButtonPress-1>", self.SaveLastClickPos)
        __class__.toptitlebar.bind("<B1-Motion>", self.Dragging)
        __class__.toptitlebar.bind("<Double-Button-1>", self.maximize)
        __class__.toptitlebar.bind("<Enter>", self.updatetopbut)
        __class__.toptitlebar.bind("<Leave>", self.downdatetopbut)
        __class__.toptitlebar.bind("<ButtonRelease-1>", self.releaseresize)

        self.titlelabel = Label(__class__.toptitlebar, bg=titlebg, fg=titlefg, bd=0, padx=0, pady=0)
        self.titlelabel.image = icon
        self.titlelabel.config(image=icon, compound=LEFT, text="   %s" % title)
        self.titlelabel.place(x=0, y=0)

        self.titlelabel.bind("<ButtonPress-1>", self.SaveLastClickPos)
        self.titlelabel.bind("<B1-Motion>", self.Dragging)
        self.titlelabel.bind("<Double-Button-1>", self.maximize)
        self.closefunction = lambda event: self.destroy()

        self.closebutton = Label(__class__.toptitlebar, text="X",
                                 bd=0,
                                 bg=titlebg, fg=titlebg,
                                 padx=14, pady=7)
        self.closebutton.pack(side=RIGHT)

        self.closebutton.bind("<Enter>", lambda event: self.closebutton.config(bg="#FF0000"))
        self.closebutton.bind("<Leave>", lambda event: self.closebutton.config(bg=titlebg))
        self.closebutton.bind("<Button-1>", self.closefunction)

        self.fullscreenbutton = Label(__class__.toptitlebar, text="[]",
                                      bd=0,
                                      bg=titlebg, fg=titlebg,
                                      padx=14, pady=7)
        self.fullscreenbutton.pack(side=RIGHT)

        self.fullscreenbutton.bind("<Enter>", lambda event: self.fullscreenbutton.config(bg="#dddddd"))
        self.fullscreenbutton.bind("<Leave>", lambda event: self.fullscreenbutton.config(bg=titlebg))
        self.fullscreenbutton.bind("<Button-1>", self.maximize)

        self.minimizebutton = Label(__class__.toptitlebar, text="-",
                                    bd=0,
                                    bg=titlebg, fg=titlebg,
                                    padx=14, pady=7)
        self.minimizebutton.pack(side=RIGHT)

        self.minimizebutton.bind("<Enter>", lambda event: self.minimizebutton.config(bg="#dddddd"))
        self.minimizebutton.bind("<Leave>", lambda event: self.minimizebutton.config(bg=titlebg))
        self.minimizebutton.bind("<Button-1>", self.minimize)
        self.bind("<Map>", self.frame_mapped)

        __class__.maincanvaswindow = Canvas(self, width=self.width, height=self.height, bg=bg, highlightthickness=1,
                                            highlightbackground="#000000")
        __class__.maincanvaswindow.pack(side=TOP)

        self.bind("<Button-1>", self.startresize)
        self.bind("<B1-Motion>", self.resizewin)
        self.bind("<Motion>", self.isonresize)
        self.bind("<ButtonRelease-1>", self.releaseresize)

        self.lastClickX = 0
        self.lastClickY = 0
        self.map = 0
        self.maximized = False
`Inline Code Example Here`
    def modgeometry(self, w, h, x=None, y=None):
        w = int(w)
        h = int(h)
        self.width = w
        self.height = h
        if (__class__.maincanvaswindow.winfo_width() != w or __class__.maincanvaswindow.winfo_height() != h) and not __class__.resizeon and not __class__.dragging:
            __class__.maincanvaswindow.config(width=w, height=h)
        if not x == None or not y == None:
            x = int(x)
            y = int(y)
            self.geometry('%dx%d+%d+%d' % (w, (h + 33), x, y))
        else:
            self.geometry('%dx%d' % (w, (h + 33)))
`Inline Code Example Here`
    def SaveLastClickPos(self, event):
        if not self.maximized:
            if event.y > 5 and event.x > 5 and event.x < (self.winfo_width() - 5):
                self.lastClickX = event.x
                self.lastClickY = event.y
                self.moveok = True
            else:
                self.moveok = False
`Inline Code Example Here`
    def Dragging(self, event):
        if self.moveok:
            if not self.maximized:
                x = self.winfo_x() + (event.x - self.lastClickX)
                y = self.winfo_y() + (event.y - self.lastClickY)
                self.modgeometry(self.winfo_width(), (self.winfo_height() - 33), x, y)

    def frame_mapped(self, event=None):
        print(event)
        if self.map == 5:
            print("yes")
            self.update_idletasks()
            # self.deiconify()
            self.overrideredirect(True)
            self.map = 0
        else:
            self.map += 1

    def minimize(self, event=None):
        print("no")
        #self.map = 0
        self.update_idletasks()
        self.overrideredirect(False)
        self.iconify()

    def maximize(self, event=None):
        if not self.maximized:
            self.oldwidth = self.winfo_width()
            self.oldheight = self.winfo_height()
            self.oldx = self.winfo_x()
            self.oldy = self.winfo_y()
            self.maximized = True
            self.modgeometry(self.winfo_screenwidth(), (self.winfo_screenheight() - 33), 0, 0)
        else:
            self.maximized = False
            self.modgeometry(self.oldwidth, self.oldheight, self.oldx, self.oldy)

    def closefunc(self, func):
        self.closefunction = lambda event: func()
        self.closebutton.bind("<Button-1>", self.closefunction)

    def winfo_heightr(self):
        return (self.winfo_height() - 33)

    def startresize(self, event=None):
        print(event)
        if not self.maximized:
            #if event.widget == __class__.maincanvaswindow:
            if True:
                self.resizelastx = event.x
                self.resizelasty = event.y
                self.resizelastw = self.winfo_width()
                self.resizelasth = self.winfo_height() - 33
                self.resizeadjx = self.winfo_rootx()
                self.resizeadjy = self.winfo_rooty()
                __class__.resizeon = True
                print("canvas")
                nonety = True
##                if event.x < 5 and event.y < (self.winfo_height() - 33 -5):
##                    self.resizeside = "left"
##                    nonety = False
                if event.x > (self.winfo_width() - 5) and event.y < (self.winfo_height() - 33 -5):
                    self.resizeside = "right"
                    nonety = False
                if event.y >(self.winfo_height() -33 - 5) and event.x > 5 and event.x < (self.winfo_width() - 5):
                    self.resizeside = "down"
                    nonety = False
                if event.x > (self.winfo_width() - 5) and event.y > (self.winfo_height() - 33 - 5):
                    self.resizeside = "rightdown"
                    nonety = False
##                if event.x < 5 and event.y > (self.winfo_height() -33 - 5):
##                    self.resizeside = "leftdown"
##                    nonety = False
                if nonety:
                    self.resizeside = ""
                print(self.resizeside)
##            elif event.widget == __class__.toptitlebar:
##                self.resizelastx = event.x
##                self.resizelasty = event.y
##                self.resizelastw = self.winfo_width()
##                self.resizelasth = self.winfo_height() - 33
##                self.resizeadjx = self.winfo_rootx()
##                self.resizeadjy = self.winfo_rooty()
##                print("titlebar")
##                nonety = True
##                if event.x < 5 and event.y > 5:
##                    self.resizeside = "left"
##                    nonety = False
##                if event.y < 5 and event.x > 5 and event.x < (self.winfo_width() - 5):
##                    self.resizeside = "up"
##                    nonety = False
##                if event.x < 5 and event.y < 5:
##                    self.resizeside = "leftup"
##                    nonety = False
##                if event.x > (self.winfo_width() - 5) and event.y > 5:
##                    self.resizeside = "right"
##                    nonety = False
##                if event.x > (self.winfo_width() - 5) and event.y < 5:
##                    self.resizeside = "rightup"
##                    nonety = False
##                if nonety:
##                    self.resizeside = ""
##            else:
##                self.resizeside = ""

    def isonresize(self, event=None):
        print(event)
        if not self.maximized:
            #if event.widget == __class__.maincanvaswindow:
            if True:
                print("canvas")
                nonety = True
##                if event.x < 5:
##                    self.config(cursor="size_we")
##                    nonety = False
                if event.x > (self.winfo_width() - 5):
                    self.config(cursor="size_we")
                    nonety = False
                if event.y >(self.winfo_height() - 33 - 5):
                    self.config(cursor="size_ns")
                    nonety = False
                if event.x > (self.winfo_width() - 5) and event.y > (self.winfo_height() - 33 - 5):
                    self.config(cursor="size_nw_se")
                    nonety = False
##                if event.x < 5 and event.y > (self.winfo_height() - 33 - 5):
##                    self.config(cursor="size_ne_sw")
##                    nonety = False
                if nonety:
                    self.config(cursor="")
##            elif event.widget == __class__.toptitlebar:
##                print("titlebar")
##                nonety = True
##                if event.x < 5 and event.y > 5:
##                    self.config(cursor="size_we")
##                    nonety = False
##                if event.y < 5 and event.x > 5 and event.x < (self.winfo_width() - 5):
##                    self.config(cursor="size_ns")
##                    nonety = False
##                if event.x < 5 and event.y < 5:
##                    self.config(cursor="size_nw_se")
##                    nonety = False
##                if event.x > (self.winfo_width() - 5) and event.y > 5:
##                    self.config(cursor="size_we")
##                    nonety = False
##                if event.x > (self.winfo_width() - 5) and event.y < 5:
##                    self.config(cursor="size_ne_sw")
##                    nonety = False
##                if nonety:
##                    self.config(cursor="")
##            else:
##                self.config(cursor="")

    def resizewin(self, event=None):
        print(event)
        if not self.maximized:
            if self.resizeside == "right":
                neww = self.width + (event.x - self.resizelastx)
                print(self.resizeside)
                if neww < self.minsizex:
                    neww = self.minsizex
                self.resizelastx = neww
                self.modgeometry(neww, self.resizelasth)
            if self.resizeside == "rightdown":
                print(self.resizeside)
                neww = self.width + (event.x - self.resizelastx)
                newh = self.height + (event.y - self.resizelasty)
                if neww < self.minsizex:
                    neww = self.minsizex
                if newh < self.minsizey:
                    newh = self.minsizey
                self.resizelastx = neww
                self.resizelasty = newh
                self.modgeometry(neww, newh)
            if self.resizeside == "down":
                newh = self.height + (event.y - self.resizelasty)
                if newh < self.minsizey:
                    newh = self.minsizey
                self.resizelasty = newh
                self.modgeometry(self.resizelastw, newh)
            if self.resizeside == "rightup":
                print(self.resizeside)
                neww = self.width + (event.x - self.resizelastx)
                newh = self.resizelasth + (self.resizelasty - event.y)
                if neww < self.minsizex:
                    neww = self.minsizex
                if newh < self.minsizey:
                    newh = self.minsizey
                self.resizelastx = neww
                newy = self.resizeadjy - (self.resizelasty - event.y)
                newx = self.resizeadjx
                self.modgeometry(neww, newh, newx, newy)
            if self.resizeside == "up":
                print(self.resizeside)
                newh = self.resizelasth + (self.resizelasty - event.y)
                if newh < self.minsizey:
                    newh = self.minsizey
                newy = self.resizeadjy - (self.resizelasty - event.y)
                newx = self.resizeadjx
                self.modgeometry(self.resizelastw, newh, newx, newy)
            if self.resizeside == "leftup":
                print(self.resizeside)
                neww = self.resizelastw + (self.resizelastx - event.x)
                newh = self.resizelasth + (self.resizelasty - event.y)
                if neww < self.minsizex:
                    neww = self.minsizex
                if newh < self.minsizey:
                    newh = self.minsizey
                newy = self.resizeadjy - (self.resizelasty - event.y)
                newx = self.resizeadjx - (self.resizelastx - event.x)
                self.modgeometry(neww, newh, newx, newy)
            if self.resizeside == "left":
                print(self.resizeside)
                neww = self.resizelastw + (self.resizelastx - event.x)
                newx = self.resizeadjx - (self.resizelastx - event.x)
                if neww < self.minsizex:
                    neww = self.minsizex
                    newx = self.resizeadjx
                newy = self.resizeadjy
                self.modgeometry(neww, self.resizelasth, newx, newy)
            if self.resizeside == "leftdown":
                print(self.resizeside)
                neww = self.resizelastw + (self.resizelastx - event.x)
                newh = self.height + (event.y - self.resizelasty)
                if neww < self.minsizex:
                    neww = self.minsizex
                if newh < self.minsizey:
                    newh = self.minsizey
                self.resizelasty = newh
                newx = self.resizeadjx - (self.resizelastx - event.x)
                newy = self.resizeadjy
                self.modgeometry(neww, self.resizelasth, newx, newy)

    def releaseresize(self, event=None):
        if __class__.resizeon:
            __class__.resizeon = False
            self.width = self.winfo_width()
            self.height = self.winfo_heightr()
            __class__.maincanvaswindow.config(width=self.winfo_width(), height=self.winfo_heightr())
        if __class__.dragging:
            __class__.dragging = False

    def modminsize(self, event=None, w=None, h=None):
        if w != None:
            self.minsizex = w
        if h != None:
            self.minsizey = h

    def updatewin(self):
        self.update()

    def wmroot(self):
        return __class__.maincanvaswindow

    def retwm(self):
        return self

if __name__ == "__main__":
    root = modtk()
    root.modify(title="Modified window", titlebg="#000427", titlefg="#ffffff")
    root.modgeometry(600, 400)
    root.modminsize(600, 400)

    label01 = Label(root.wmroot(), text="This works")

    def closewin():
        root.destroy()
        quit()

    root.closefunc(closewin)

    windowExit = False

    while not windowExit:

        label01.place(x=(root.winfo_width() // 2), y=(root.winfo_heightr() // 2))

        root.updatewin()

        time.sleep(0.05)

closewin()

#include <iostream> #include <string> #include <iomanip> using namespace st

558fe5180e0e8fc922d31c23ef84d240

A.Employee and ProductionWorker Classes
Design a class named Employee. The class should keep the following information in
Employee name
Employee number
Hire date
Write one or more constructors and the appropriate set and get functions for the class.
Next, write a class named ProductionWorker that is derived from the Employee class. The ProductionWorker class should have member variables to hold the following information:
Shift (an integer)
Hourly pay rate (a double)
The workday is divided into two shifts: day and night. The shift variable will hold an integer value representing the shift that the employee works. The day shift is shift 1, and the night shift is shift 2. Write one or more constructors and the appropriate set and get functions for the class. Demonstrate the classes by writing a program that uses a ProductionWorker object.

Jenkins Pipeline With Sonarqube and Gitlab

558fe5180e0e8fc922d31c23ef84d240

In this guide, we are going to deploy a continuous integration process between Jenkins, GitLab, and SonarQube.

The end goal will be to review the code quality through SonarQube for GitLab repository using Jenkins. Following is the process flow we need to manage: